/*
Theme Name: NPO法人 札幌カウンセリング学習センター テーマver1.0
Theme URI: https://sclc.jp/
Author:  JET BEANS INC.
Author URI: http://jetbeans.com
Description: オリジナルデザインCSS
Version: 1.0
License: 
License URI: 
Tags: 
Text Domain: sclc.jp
*/


@charset "UTF-8";

/*Googleフォント*/
@import url(https://fonts.googleapis.com/css2?family=Sen:wght@400..800&Noto+Sans+JP:wght@300;400;500;700&Noto+Serif+JP&display=swap);
/*font-family: 'Noto Sans JP', sans-serif; 基本の日本語「Noto Sans JP」*/
/*font-family: 'Noto Serif JP', serif;　明朝*/
/*font-family: "Sen", sans-serif;　英語タイトル等のゴシック（Avenirに似たGoogleフォント）*/

/*サイズやバランスを欧文フォントにあわせた日本語フォント*/
/*https://github.com/ookamiinc/kinto*/
/*「font」ディレクトリに設置して参照*/

/*google Material Symbols*/
@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200");

/*Adobeフォント*/
/*myriad-variable*/
/*@import url("https://use.typekit.net/anr1sks.css");　←読み込みしてないのに表示される…なぜ*/
/*font-family: "myriad-variable", sans-serif;　ウェイトは70、300*/

/*秀英丸ゴシック*/
/*読み込みはmain.jsに記載*/
/*font-family: "dnp-shuei-mgothic-std", sans-serif;　ウェイトは400、600*/


@font-face {
	font-family: 'Kinto Sans';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url(../font/kinto-master/KintoSans/KintoSans-Light.woff2) format("woff2"), url(../font/kinto-master/KintoSans/KintoSans-Light.woff) format("woff"), url(../font/kinto-master/KintoSans/KintoSans-Light.ttf) format("truetype")
}

@font-face {
	font-family: 'Kinto Sans';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url(../font/kinto-master/KintoSans/KintoSans-Regular.woff2) format("woff2"), url(../font/kinto-master/KintoSans/KintoSans-Regular.woff) format("woff"), url(../font/kinto-master/KintoSans/KintoSans-Regular.ttf) format("truetype")
}

@font-face {
	font-family: 'Kinto Sans';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url(../font/kinto-master/KintoSans/KintoSans-Medium.woff2) format("woff2"), url(../font/kinto-master/KintoSans/KintoSans-Medium.woff) format("woff"), url(../font/kinto-master/KintoSans/KintoSans-Medium.ttf) format("truetype")
}

@font-face {
	font-family: 'Kinto Sans';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url(../font/kinto-master/KintoSans/KintoSans-Bold.woff2) format("woff2"), url(../font/kinto-master/KintoSans/KintoSans-Bold.woff) format("woff"), url(../font/kinto-master/KintoSans/KintoSans-Bold.ttf) format("truetype")
}


/*日本語に含まれる約物を半角にする「Yaku Han JP」*/
@import url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/css/yakuhanjp.min.css);


/*
テーマカラーメモ

文字色、ボタンの色（hoverは0.8に）
#3e3a39

ポイントカラー1、ベタ背景色、枠線等のグリーン
#52b532

ポイントカラー2：濃いめのグレー
#6b6a6a

ポイントカラー3：薄いグレー
#acacac

ベタ背景：薄いグレー（フッター等）
#f4f4f4

*/

.sample-color{
	color:#f4f4f4
}



html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
box-sizing: border-box;/*width:100%で､padding分をハミ出させないためのスタイル*/
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
-ms-box-sizing: border-box;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, nav, section { display: block; }

audio, canvas, video {
	display: inline-block;
	max-width: 100%;
}

html {
	font-family: sans-serif;
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:	 100%;
	font-size: 62.5%;
}


body {
	position:relative;
	margin:0;
	padding:0;
	font-size: 1.6rem;
	line-height: 1.8;
	font-family: 'Noto Sans JP',YakuHanJP,"Kinto Sans","Helvetica Neue","Segoe UI",Helvetica,"游ゴシック体",YuGothic,"Yu Gothic M","游ゴシック Medium","Yu Gothic Medium","メイリオ",Meiryo,sans-serif;
	color : #3e3a39; /*色指定*/
	margin-top: 0px;
	font-weight: normal;
	overflow: hidden;
	/*border-left: solid 5px #0D468F;*/
	z-index: 0;
}


.clearfix:after,
.pc_only_clearfix:after {
	content: ".";
	display: block;
	height: 0.1px;
	line-height: 0;
	clear: both;
	visibility: hidden;
}

/* ----------Hides from IE-mac \*/
* html .clearfix,
* html .pc_only_clearfix {
	height: 1%;
}

.clearfix,
.pc_only_clearfix {
	display: block;
}

/* ----------for IE 5.5-7---------- */
.clearfix,
.pc_only_clearfix {
	zoom: 100%;
}

/*Chromeでbuttonなどをクリックした際の青枠線を表示しない*/
*:focus {
	outline: none;
}

a {
	color : #3e3a39; /* 色指定 */
	text-decoration:none;
	outline : 0 ; /* text-indentを使用した際にFirefoxでリンク線が出ないようにする */
}
a:visited{ color:#555555;}
a:focus { outline: thin dotted; }
a:hover, a:active {
	text-decoration  : none; /*下線指定*/
	color: #3e3a39;
}

.link_color{
	color : #52b532;
}

.link_color:hover{
	color : #4aa32d;
}

.link_underline{
	text-decoration: underline;
}

.link_underline:hover{
	text-decoration: underline;
}

h1, h2, h3, h4, h5, h6 {
	clear: both;
	margin:0;
}

address {
	font-style: italic;
	margin-bottom: 24px;
}

abbr[title] { cursor: help; }

b, strong { font-weight: 600; }

.fw500{ font-weight: 500; }

cite, dfn, em, i { font-style: italic; }

mark, ins { text-decoration: none; }

p { text-align:left;
	color:#3e3a39; }

code, kbd, tt, var, samp, pre {
	font-family: monospace, serif;
	font-size: 15px;
	-webkit-hyphens: none;
	-moz-hyphens:	none;
	-ms-hyphens:	 none;
	hyphens:		 none;
	line-height: 1.6;
}

pre {
	border:none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing:	border-box;
	box-sizing:		 border-box;
	margin-bottom: 24px;
	max-width: 100%;
	overflow: auto;
	padding: 12px;
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

blockquote,
q {
	-webkit-hyphens: none;
	-moz-hyphens:	none;
	-ms-hyphens:	 none;
	hyphens:		 none;
	quotes: none;
}

blockquote:before, blockquote:after, q:before,q:after {
	content: "";
	content: none;
}

blockquote {
	font-size:100%;
	font-style: italic;
	font-weight: 300;
	line-height: 1.6;
}

blockquote cite, blockquote small {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6;
}

blockquote em, blockquote i, blockquote cite { font-style: normal; }

blockquote strong,
blockquote b { font-weight: 400; }

small { font-size: smaller; }

big { font-size: 125%; }

sup, sub {
	font-size: 75%;
	height: 0;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup { bottom: 1ex; }

sub { top: .5ex; }

ul{ list-style-type:none; }
ol{
	list-style-type:none;
	margin-left:1.5em;
	text-indent:-1.5em;
	}

li > ul,
li > ol { margin: 0 0 0 0px; }

img {
	-ms-interpolation-mode: bicubic;
	border: 0;
	vertical-align: middle;/*image-rendering: -webkit-optimize-contrast;*/
}

a:hover img{
	filter:alpha(opacity=80); /*IE*/
	-moz-opacity:0.80; /*FF*/
	opacity:0.80;
}

figure { margin: 0; }

fieldset {
	border: 1px solid #dadada;
	margin: 0 0 24px;
	padding: 11px 12px 0;
}

legend { white-space: normal; }

button, input, select, textarea {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:	border-box;
	box-sizing:		 border-box;
}

button, input { line-height: normal; }

 /* Removing the inner shadow, rounded corners on iOS inputs */
input, textarea {background-image: -webkit-linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,0)); }

button, html input[type="button"], input[type="reset"], input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled], input[disabled] { cursor: default; }

input[type="checkbox"],
input[type="radio"] { padding: 0; }

input[type="search"] {
	-webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
	vertical-align: top;
}

table, th, td { border:none; }

table {
	font-size:100%;
	border-collapse:collapse;
	}

caption, th, td {
	font-size:100%;
	line-height:1.6;
	font-weight: normal;
}



/* -------------------- 

ローディング

-------------------- */

/*ローディング　画面全体*/
.loading_box{
	display: none;
}


/*ローディング　画面全体*/
/*
.loading_box{
	position: fixed;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100vh;
	width: 100vw;
	top:0;
	bottom: 0;
	left: 0;
	right: 0;
	background: url(../img/logo_color.svg) no-repeat center 42%;
	background-size: 180px 55px;
	background-color: #ffffff;
	z-index: 20000 !important;
}


.sk-fading-circle {
	margin: 100px auto;
	width: 40px;
	height: 40px;
	position: relative;
}

.sk-fading-circle .sk-circle {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

.sk-fading-circle .sk-circle:before {
	content: '';
	display: block;
	margin: 0 auto;
	width: 15%;
	height: 15%;
	background-color: #333;
	border-radius: 100%;
	-webkit-animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
			animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
}
.sk-fading-circle .sk-circle2 {
	-webkit-transform: rotate(30deg);
		-ms-transform: rotate(30deg);
			transform: rotate(30deg);
}
.sk-fading-circle .sk-circle3 {
	-webkit-transform: rotate(60deg);
		-ms-transform: rotate(60deg);
			transform: rotate(60deg);
}
.sk-fading-circle .sk-circle4 {
	-webkit-transform: rotate(90deg);
		-ms-transform: rotate(90deg);
			transform: rotate(90deg);
}
.sk-fading-circle .sk-circle5 {
	-webkit-transform: rotate(120deg);
		-ms-transform: rotate(120deg);
			transform: rotate(120deg);
}
.sk-fading-circle .sk-circle6 {
	-webkit-transform: rotate(150deg);
		-ms-transform: rotate(150deg);
			transform: rotate(150deg);
}
.sk-fading-circle .sk-circle7 {
	-webkit-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
			transform: rotate(180deg);
}
.sk-fading-circle .sk-circle8 {
	-webkit-transform: rotate(210deg);
		-ms-transform: rotate(210deg);
			transform: rotate(210deg);
}
.sk-fading-circle .sk-circle9 {
	-webkit-transform: rotate(240deg);
		-ms-transform: rotate(240deg);
			transform: rotate(240deg);
}
.sk-fading-circle .sk-circle10 {
	-webkit-transform: rotate(270deg);
		-ms-transform: rotate(270deg);
			transform: rotate(270deg);
}
.sk-fading-circle .sk-circle11 {
	-webkit-transform: rotate(300deg);
		-ms-transform: rotate(300deg);
			transform: rotate(300deg); 
}
.sk-fading-circle .sk-circle12 {
	-webkit-transform: rotate(330deg);
		-ms-transform: rotate(330deg);
			transform: rotate(330deg); 
}
.sk-fading-circle .sk-circle2:before {
	-webkit-animation-delay: -1.1s;
			animation-delay: -1.1s; 
}
.sk-fading-circle .sk-circle3:before {
	-webkit-animation-delay: -1s;
			animation-delay: -1s; 
}
.sk-fading-circle .sk-circle4:before {
	-webkit-animation-delay: -0.9s;
			animation-delay: -0.9s; 
}
.sk-fading-circle .sk-circle5:before {
	-webkit-animation-delay: -0.8s;
			animation-delay: -0.8s; 
}
.sk-fading-circle .sk-circle6:before {
	-webkit-animation-delay: -0.7s;
			animation-delay: -0.7s; 
}
.sk-fading-circle .sk-circle7:before {
	-webkit-animation-delay: -0.6s;
			animation-delay: -0.6s; 
}
.sk-fading-circle .sk-circle8:before {
	-webkit-animation-delay: -0.5s;
			animation-delay: -0.5s; 
}
.sk-fading-circle .sk-circle9:before {
	-webkit-animation-delay: -0.4s;
			animation-delay: -0.4s;
}
.sk-fading-circle .sk-circle10:before {
	-webkit-animation-delay: -0.3s;
			animation-delay: -0.3s;
}
.sk-fading-circle .sk-circle11:before {
	-webkit-animation-delay: -0.2s;
			animation-delay: -0.2s;
}
.sk-fading-circle .sk-circle12:before {
	-webkit-animation-delay: -0.1s;
			animation-delay: -0.1s;
}

@-webkit-keyframes sk-circleFadeDelay {
	0%, 39%, 100% { opacity: 0; }
	40% { opacity: 1; }
}

@keyframes sk-circleFadeDelay {
	0%, 39%, 100% { opacity: 0; }
	40% { opacity: 1; } 
}
*/



/* -------------------------------- 

 レイアウト設定
 
-------------------------------- */

/*大枠の構成
	#top　ページトップアンカー
	.header　ヘッダー
	.drawermenu　グランドメニュー
	.contents_all　コンテンツ
	.footer　フッター
*/


/* --------------------

ページトップアンカー

-------------------- */

#top{
	
}


/* --------------------

ヘッダー

-------------------- */

/*div*/

.header{
	display: block;
	position: fixed;
	top:0;
	right: 0;
	left: 0;
	width: 100%;
	height: 120px;
	background-color: rgba(255,255,255,0.9);
	
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	
	z-index: 9999;
}

/*main.jsで指定。※ページをスクロールさせたらヘッダーの高さを狭める*/
body.header_narrow_height .header{
	height: 80px;
}

/*トップページのみ*/
.frontpage .header {
}

.header_inner{
	display: flex;
	position: relative;
	justify-content: space-between;
	align-items: center;  /* 子要素をflexboxにより上下中央に配置する*/
	width: 100%;
	max-width: 1600px;
	padding-left: 20px;
	padding-right: 20px;
	margin: 0 auto;
	height: 100%;

	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

/*1600px以上*/
@media (min-width: 1600px) {
	.header_inner{

	}
}

/*固定ヘッダーロゴ　div*/
.btn_logo{
	display: inline-block;
	position: relative;
	width: 380px;
	min-width: 340px;
	height: 120px;
	z-index: 10003;/*グランドメニューは10004; headerは10002*/
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

/*main.jsで指定。※ページをスクロールさせたらヘッダーの高さを狭めるclassがbodyに追加される*/
body.header_narrow_height .btn_logo{
	width: 340px;
	height: 80px;
}


.btn_logo a,
.frontpage .btn_logo p{
	display: block;
	position: relative;
	width: 100%;
	height: 120px;
	background: url(../img/logo.svg) no-repeat left center;
	background-size: contain;
}

/*main.jsで指定。※ページをスクロールさせたらヘッダーの高さを狭める*/
body.header_narrow_height  .btn_logo a,
body.frontpage.header_narrow_height .btn_logo p{
	height: 80px;
}

.frontpage .btn_logo p{
	background: url(../img/logo.svg) no-repeat left center;
	background-size: contain;
}

.frontpage .btn_logo p a{
	display: none;
}

.btn_logo p span{
	display: none;
}


/*ヘッダーメインメニュー　div（PCのみ表示）*/

.sub_menu_box{
	display: flex;
	position: absolute;
	justify-content: flex-end; /*右寄せ*/
	align-items: center;  /* 子要素をflexboxにより上下中央に配置する*/
	width: calc(100% - 20px - 20px);
	max-width: 1600px;
	margin-right: 0;
	margin-top: -40px;
	padding-right: 15px;
}

body.header_narrow_height .sub_menu_box{
	display: none;
}

/*1600px以上*/
@media (min-width: 1600px) {
	.sub_menu_box{
	}
}

/*画面幅1080px未満*/
@media (max-width: 1080px) {
	.sub_menu_box{
		margin-right: 0;
		margin-top: 0px;
		padding-right: 60px;
	}
}

/*ul*/
.sub_menu{
	display: flex;
	position: absolute;
	justify-content: flex-end; /*右寄せ*/
}

.sub_menu .tel{
	display: inline-block;
	position: relative;
	vertical-align: middle;
	margin-right: 20px;
	z-index: 1;
}

.sub_menu .tel a{
	color: color(display-p3 0.325 0.71 0.204);
	font-weight: 600;
	font-size: 2.3rem;
	pointer-events: none;
}

.sub_menu .tel a:before{
	content:"";
	display: inline-block;
	position: relative;
	vertical-align: middle;
	margin-right: 0px;
	top:-2px;
	width: 30px;
	height: 30px;
	background: url("../img/icon_24_tel_green.svg") no-repeat center center;
	background-size: 30px 30px;
}

.sub_menu .contact a{
	display: inline-block;
	position: relative;
	text-align: center;
	font-size: 1.5rem;
	line-height: 130%;
	font-weight: normal;
	color: #ffffff !important;
	background: url("../img/parts_bg_1.jpg") center center;
	background-size: 320px 320px;
	padding: 11px 25px 11px 25px;
	text-decoration: none;
	z-index: 1;
	pointer-events: visible;
	overflow: hidden;
	border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;

}

.sub_menu .contact a:after{
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.sub_menu .contact a:before{
	content:"";
	display: inline-block;
	position: relative;
	vertical-align: middle;
	margin-right: 3px;
	top:-1px;
	width: 16px;
	height: 16px;
	background: url("../img/icon_24_mail_white.svg") no-repeat center center;
	background-size: 24px 24px;
}

.sub_menu .contact a:hover:after{
	content:"";
	display: inline-block;
	position: absolute;
	background-color: rgba(0, 0, 0, 0.08);
	top:0;
	bottom: 0;
	left: 0;
	right: 0;
}

.main_menu_box {
	display: inline-block;
	position: relative;
	width: clc(100% - 410px);
	padding-top: 40px;
	padding-left: 15px;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

body.header_narrow_height .main_menu_box {
	padding-top: 0px;
}

/*ul*/
.main_menu {
	display: flex;
}

.main_menu li {
	display: flex;
	justify-content: center;
	align-items: center;
	vertical-align: middle;
	margin-left: 0px;
	margin-right: 0px;
	white-space: nowrap;
	line-height: 100%;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.main_menu li:before {
	content:"";
	display: inline-block;
	width: 1px;
	height: 1.5rem;
	border-right: solid 1px #9d9d9e;
	margin-right: 5px;
}

.main_menu li:first-of-type:before {
	content:none;
}

/*画面幅1080px未満*/
@media (max-width: 1080px) {
	.main_menu li {
		display: none;
	}
}

.main_menu li a {
	font-family: 'Noto Sans JP', sans-serif;
	text-align: center;
	padding: 14px 1vw 14px 1vw;
	color: #000000;
	font-weight: 500;
	font-size: 1.5rem;
	
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
	transition: all 0.1s ease-in-out;
}




/*画面幅1220px未満*/

@media (max-width: 1220px) {
	.header_inner{
		padding-left: 20px;
		padding-right: 20px;
	}
	.main_menu li a {
		padding: 14px 7px 14px 7px;
		font-size: 1.45rem;
	}
	.main_menu li:before {
		margin-right: 5px;
	}
}

.main_menu li a:hover {

}


/* --------------------

ドロワーメニュー

-------------------- */

.drawermenu {
}


/*ドロワー全体　nav　※背景色以外のstyleは「drawer.css」に記載*/

.drawer-nav {
	top: 0;
	background: url(../img/bg_green2.jpg) center top;
	background-size: 800px 358px;
}


/*グランドメニュー全体　div*/

.drawermenu_box {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	/* 縦方向中央揃え（Safari用） */
	align-items: center;
	/* 縦方向中央揃え */
	-webkit-justify-content: center;
	/* 横方向中央揃え（Safari用） */
	justify-content: center;
	/* 横方向中央揃え */
	margin: 0 auto;
	padding: 50px 0px 50px 0px;
	width: 80%;
	min-height: 80vh;
}

.drawermenu.scroll_change .drawermenu_box {
	}

.drawermenu_outer {
	display: inline-block;
	position: relative;
	text-align: center;
	letter-spacing: -.40em;
	padding: 4%;
	margin: 0 auto;
	width: 86vw;
	max-width: 960px;
	/*
	-webkit-filter: drop-shadow(0px 3px 8px rgba(0,0,0,.05));
	filter: drop-shadow(0px 0px 8px rgba(0,0,0,.05));
	*/
}

.drawermenu_inner {
	display:block;
}

.drawer-hamburger {
	position: absolute;
	top: 25px;
	right: 10px;
}

/*ハンバーガーメニューの表示位置のみここで調整　※位置以外は「drawer.css」に記載*/
body.header_narrow_height .drawer-hamburger {
	position: absolute;
	top: 10px;
	right: 10px;
}

/*画面幅1200px以上*/
@media (min-width: 1200px) {
	.drawermenu_outer {
	}

	.drawermenu_inner {
	}

}

.drawermenu_logo {
	display: block;
	width: 100%;
	margin-bottom: 30px;
}

.drawermenu_logo a {
	display: block;
	position: relative;
	width: 100%;
	height: 50px;
	background: url("../img/logo_white.svg") no-repeat center top;
	background-size: contain;
}

.drawermenu_logo a span {
	display: none;
}


/*div*/

.drawermenu {
	text-align: left;
}

.drawermenu ul{
	padding-left: 2rem;
}

.drawermenu ul li {
	width: 100%;
	padding: 0px 0px 0px 0px;
	margin-bottom: 0px;
	background: none;
	color: #ffffff;
}

.drawermenu ul li a{
	color: #ffffff;
	padding: 8px 10px 8px 10px;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.drawermenu ul li a:hover {
	/*color: #3e3a39;*/
	color: rgba(0, 200, 179, 1);
	background-color: #ffffff;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.drawermenu ul.drawermenu_list>li {
	margin-bottom: 1.6rem;
	white-space: nowrap;
}

.drawermenu ul.drawermenu_list>li a {
	font-size: 1.8rem;
}


/*blank*/

.drawermenu ul.drawermenu_list>li a.icon_blank:after {
	content: "";
	display: inline-block;
	position: relative;
	width: 2rem;
	height: 2rem;
	background: url(../img/icon_svg_blank_white.svg) no-repeat center center;
	background-size: contain;
	margin-left: 5px;
	margin-top: -4px;
	vertical-align: middle;
	line-height: normal;
}


/* ハンバーガーメニュー */

/*中身のハンバーガーメニュー部分のstyleは「drawer.css」に記載*/

.btn_drawermenu {
	display: none;
}

/*1080px未満*/
@media (max-width: 1080px) {
	.drawermenu {
		text-align: center;
	}
	.drawermenu ul.drawermenu_list{
		padding-left: 0rem;
		text-align: left;
	}
	.btn_drawermenu {
		display: block;
		position: fixed;
		top: 0px;
		left: 0px;
		right: 0px;
		width: 100%;
		/*min-width: 1100px;*/
		height: 80px;
		pointer-events: none;
		z-index: 10002;
		/*.drawer-nav（開いたドロワーメニュー）は10001*/
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
}


/* -------------------------------- 

 コンテンツ欄
 
-------------------------------- */

/*トップページ以外のコンテンツ欄*/
.contents_all{
	margin-top: 120px;/*ヘッダーの高さ分*/
}

.header_narrow_height .contents_all{
	margin-top: 80px;/*ヘッダーの高さ分*/
}

.anker{
	margin-top:-140px;
	padding-top: 140px;
}

.header_narrow_height .anker{
	margin-top:-100px;
	padding-top: 100px;
}


/* -------------------------------- 

 パララックス設定

-------------------------------- */

/*フェードイン及びちょっと上に移動*/
.fadeInUp {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeInUp;
 animation-name: fadeInUp;
 visibility: visible !important;
 opacity: 0;
}

@keyframes fadeInUp {
	0% { opacity: 0;
		-webkit-transform: translateY(20px);
		-ms-transform: translateY(20px);
		transform: translateY(20px);
		}
	100% { opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
		}
}

/*--------------------*/

/*ディレイ（待機時間）※他のアニメーションとの併用*/
.delay_01 {animation-delay: 0.1s;}
.delay_02 {animation-delay: 0.2s;}
.delay_03 {animation-delay: 0.3s;}
.delay_04 {animation-delay: 0.4s;}
.delay_05 {animation-delay: 0.5s;}
.delay_06 {animation-delay: 0.6s;}
.delay_07 {animation-delay: 0.7s;}
.delay_08 {animation-delay: 0.8s;}
.delay_09 {animation-delay: 0.9s;}
.delay_1 {animation-delay: 1.0s;}
.delay_11 {animation-delay: 1.1s;}
.delay_12 {animation-delay: 1.2s;}
.delay_13 {animation-delay: 1.3s;}
.delay_14 {animation-delay: 1.4s;}
.delay_15 {animation-delay: 1.5s;}
.delay_16 {animation-delay: 1.6s;}
.delay_17 {animation-delay: 1.7s;}
.delay_18 {animation-delay: 1.8s;}
.delay_19 {animation-delay: 1.9s;}
.delay_2 {animation-delay: 2.0s;}
.delay_25 {animation-delay: 2.5s;}
.delay_3 {animation-delay: 3.0s;}
.delay_35 {animation-delay: 3.5s;}
.delay_4 {animation-delay: 4.0s;}
.delay_45 {animation-delay: 4.5s;}
.delay_5 {animation-delay: 5.0s;}

.delay_10 {animation-delay: 10.0s;}




/*フェードイン（ぼかし無し）*/
/*main.jsの「汎用版1」*/

.fadeIn {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeIn;
 animation-name: fadeIn;
 visibility: visible !important;
 animation-timing-function: ease-in-out;
 opacity: 0;
}

@keyframes fadeIn {
	0% { opacity: 0;

		}
	100% { opacity: 1;

		}
}


/*--------------------*/

/*フェードイン（ぼかしあり）*/
/*main.jsの「汎用版2」*/

.fadeInBlur {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeInBlur;
 animation-name: fadeInBlur;
 visibility: visible !important;
 animation-timing-function: ease-in-out;
 opacity: 0;
}


@keyframes fadeInBlur {
	0% { opacity: 0;
		filter: blur(30px);
		-webkit-filter: blur(30px);
		}
	100% { opacity: 1;
		filter: blur(0px);
		-webkit-filter: blur(0px);
		}
}

/*フェードイン（ぼかしあり）3秒かけて遷移*/
.fadeInBlur_For3sec {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:3s;
 -ms-animation-duration:3s;
 animation-duration:3s;
 -webkit-animation-name: fadeInBlur_For3sec;
 animation-name: fadeInBlur_For3sec;
 visibility: visible !important;
 animation-timing-function: ease-in-out;
 opacity: 0;
}


@keyframes fadeInBlur_For3sec {
	0% { opacity: 0;
		filter: blur(30px);
		-webkit-filter: blur(30px);
		}
	100% { opacity: 1;
		filter: blur(0px);
		-webkit-filter: blur(0px);
		}
}

/*--------------------*/

/*スライドシャッター（半透明の白で隠しておいてシャーッと開く）*/
/*main.jsの「汎用版3」*/

.slideShutter {
	overflow: hidden;-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:1s;
	-ms-animation-duration:1s;
	animation-duration:1s;
	-webkit-animation-name: slideShutter_base;
	animation-name: slideShutter_base;
	visibility: visible !important;
	animation-timing-function: ease-in-out;
	opacity: 1;
	z-index: 1;
}

@keyframes slideShutter_base {
	0% {
		opacity: 0;
		}
	100% {
		opacity: 1;	
		}
}

.slideShutter:after{
	content: "";
	display: block;
	position: absolute;
	top:0;
	right: 0;
	height: 100%;
	width: 100%;
	background-color: rgba(255,255,255,0.7);
		
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:1s;
	-ms-animation-duration:1s;
	animation-duration:1s;
	-webkit-animation-name: slideShutter_coverbg;
	animation-name: slideShutter_coverbg;
	visibility: visible !important;
	opacity: 1;
	z-index: 1;
}


@keyframes slideShutter_coverbg {
	0% {
		right: 0;
		}
	20% {
		right: 0;
		}
	90% {
		right: 100%;
		}
	100% {
		right: 100%;	
		}
}

/*--------------------*/

/*スライドシャッター（左からベタをシャーッと出して、右に引っ込むと文字がある）*/
/*main.jsの「汎用版4」*/

.reveal-text,
.reveal-text::after {
	animation-delay: var(--animation-delay, 3s);
	animation-iteration-count: var(--iterations, 1);
	animation-duration: var(--duration, 800ms);
	animation-fill-mode: both;
	animation-timing-function: cubic-bezier(0.0, 0.0, 0.2, 1);
	animation-timing-function: ease-in-out;
}

.reveal-text {
	--animation-delay: var(--delay, 0);
	--animation-duration: var(--duration, 800ms);
	--animation-iterations: var(--iterations, 1);
	animation-timing-function: ease-in-out;
	position: relative;
	animation-name: clip-text;
	white-space: nowrap;
	cursor: default;&::after {
		content: "";
		position: absolute;
		z-index: 999;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background-color: #52b532;
		transform: scaleX(0);
		transform-origin: 0 50%;
		pointer-events: none;
		animation-name: text-revealer;
	}
	
}

@keyframes clip-text {
	from {
		clip-path: inset(0 100% 0 0);
	}
	to {
		clip-path: inset(0 0 0 0);
	}
}


@keyframes text-revealer {0%, 50% {
		transform-origin: 0 50%;
	}60%, 100% {
		transform-origin: 100% 50%;   
	}
60% {
		transform: scaleX(1);
	}100% {
		transform: scaleX(0);
	}
}




/*------------------------------

フッター

------------------------------*/

#footer{
	display: block;
	position: relative;
	
	/*min-width: 1260px;*/
	
}

/**/
.footer_inner{
	display: block;
	position: relative;
	padding: 50px 90px 50px 90px;
}

/*背景が緑のお問い合わせ欄*/
.footer_inner.footer_inner1{
	background: url(../img/bg_green2.jpg) center top;
	background-size: 800px 358px;
}

/*背景がグレーの住所等の欄*/
.footer_inner.footer_inner2{
	background-color: #f1f3ed;
}

/*フッターのお問い合わせ欄内側全体*/
.footer_content_2column{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
	
	max-width: 1320px;
	margin: 0 auto;
}

.footer_content_2column .column_inner{
	display: inline-block;
	position: relative;
	vertical-align: top;
	letter-spacing: normal;
}

.footer_content_2column .column_inner:nth-of-type(1){
	padding-right: 6vw;
}

.footer_content_2column .column_inner:nth-of-type(2){
}

.footer_content_2column .column_inner .section_title_e,
.footer_content_2column .column_inner .section_title{
	color: #ffffff !important;
}

.footer_contact_link_text{
	font-size: 1.8rem;
	font-weight: 600;
	color: #ffffff;
	margin-bottom: 25px;
	letter-spacing: 0.1rem;
}

.footer_contact_link_box{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
	position: relative;
}

.footer_contact_link_box_inner{
	display: inline-block;
	position: relative;
	vertical-align: top;
	letter-spacing: normal;
}

.footer_contact_link_box_inner:nth-of-type(1){
	padding-right: 50px;
}

.footer_contact_link_box_inner:nth-of-type(2){
}

.footer_contact_tel{
	
}

.footer_contact_tel a{
	font-size: 3.9rem;
	color: #ffffff;
	line-height: 100%;
	pointer-events: none;
}

.footer_contact_tel a:before{
	content:"";
	display: inline-block;
	position: relative;
	vertical-align: middle;
	margin-right: 0px;
	top:-2px;
	width: 42px;
	height: 42px;
	background: url("../img/icon_24_tel_white.svg") no-repeat center center;
	background-size: 42px 42px;
}

.footer_contact_time{
	padding-left: 42px;
	font-size: 1.6rem;
	color: #ffffff;
}


/*p*/
.footer_contact_button{
	
}

/*a*/
.footer_contact_button_white{
	display: inline-block;
	position: relative;
	text-align: center;
	font-size: 1.6rem;
	line-height: 130%;
	font-weight: 600;
	color: #00b300 !important;
	background-color: #ffffff;
	padding: 20px 22px 20px 22px;
	min-width: 300px;
	text-decoration: none;

	pointer-events: visible;
	overflow: hidden;
	border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
	
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	
	z-index: 1;
}

.footer_contact_button_white:after{
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.footer_contact_button_white:before{
	font-family: "Material Symbols Outlined";
	content: "\e158";
	display: inline-flex; /* 子要素をflexboxで揃える */
	flex-direction: column; /* 子要素をflexboxにより縦並びに揃える */
	justify-content: center; /* 子要素をflexboxにより上下中央に配置する */
	align-items: center;  /* 子要素をflexboxにより左右中央に配置する*/
	position: relative;
	color: #00b300 !important;
	width: 22px;
	height: 22px;
	font-size: 22px;
	font-weight: 500;
	vertical-align: middle;
	line-height: normal;
	top:-1px;
	margin-right: 3px;
	border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
}

.footer_contact_button_white:hover,
.footer_contact_button_white:hover:before{
	opacity: 0.9;
}



/*フッターのロゴや住所欄内側全体*/
.footer_about_box{
	max-width: 1560px;
	margin: 0 auto;
}

.footer_logo_box{
	margin-bottom: 10px;
}

.footer_logo{
	
}

.footer_address_box{
	position: relative;
	margin-bottom: 20px;
}

.footer_address{
	position: relative;
	font-size: 1.6rem;
	padding-left: 75px;
	margin-bottom: 20px;
}

/*a*/
.footer_tel_link{
	text-decoration: none;
	pointer-events: none;/*PCのみリンク無視*/
}

.footer_tel_link:hover{
	text-decoration: underline;
}

.footer_link_box{
	padding-left: 75px;
	
}

.footer_link_title{
	display: inline-block;
	font-size: 1.5rem;
	vertical-align: top;
	padding-right: 1.5rem;
}

/*ul*/
.footer_link_list {
	display: inline-block;
	vertical-align: top;
	padding-left: 1.5rem;
	border-left: solid 1px #333333;
}

.footer_link_list li {

}

.footer_link_list li a {
	font-family: 'Noto Sans JP', sans-serif;
	text-align: center;
	color: #333333;
	font-size: 1.5rem;
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
	transition: all 0.1s ease-in-out;
}

.footer_link_list li a span{
	display: block;
	position: relative;
	font-family: "Sen", sans-serif;
	text-align: center;
	font-weight: 400;
	font-size: 1.1rem;
	color: #333333;
	padding-top: 3px;
	
}

.footer_link_list li a:hover {
	text-decoration: underline;
	color: #00b802;
}




/*コピーライト*/
.footer_copyright_box{
	display: block;
	position: fixed;
	top:160px;
	left:30px;
	width: 30px;
	transform: rotate(90deg);
	z-index: 8888;
}

.footer_copyright_box.pc_only{
	display: inline-block;
	
}


.footer_copyright_inner{
	display: inline-block;
	position: relative;
}

.footer_copyright_inner p{
	font-size: 1.3rem;
	color: #00b900;
	white-space: nowrap;
	line-height: 100%;
	text-align: left;
	font-weight: 300;
	letter-spacing: 0.15rem;
}





/* ----------ページTOPへボタン---------- */
#pagetop_wrapper {
	position: fixed;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	right: 10px;
	bottom: 10px;
	width: 60px;
	height: 60px;
	padding: 0;-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;z-index: 100;
}

.pagetop{
	display: inline-block;
	position: relative;
	width: 60px;
	height: 60px;
}

/*a*/
.pagetop a {
	display: inline-block;
	position: relative;width: 60px;
	height: 60px;/*background-color: #ffffff;*/

	border: solid 1px #00b900 !important;	
	text-decoration: none;
border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.pagetop a:after {
	font-family: "Material Symbols Outlined";
	content: "\e5d8";
	position: absolute;
	 top: 50%;
	 left: 50%;
	 transform: translate(-50%, -50%);
	 -webkit-transform: translate(-50%, -50%);
	 -ms-transform: translate(-50%, -50%);
	font-size: 36px;
	font-weight: 100;
	color: #00b900;
}


.pagetop a:hover {
	opacity: 0.8;
}

.pagetop a span {
	display:none;
}


/*------------------------------

各パーツ設定

------------------------------*/



/*文字を一文字ずつディレイで表示*/
.delay_text{
	
}

.text_delay_animation:nth-Child(1){
	-webkit-animation: text_SlideFadeDelay 0.4s ease-in-out;
			animation: text_SlideFadeDelay 0.4s ease-in-out;
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
}

.text_delay_animation:nth-Child(2){
	-webkit-animation: text_SlideFadeDelay 0.6s ease-in-out;
			animation: text_SlideFadeDelay 0.6s ease-in-out;
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
}

.text_delay_animation:nth-Child(3){
	-webkit-animation: text_SlideFadeDelay 0.8s ease-in-out;
			animation: text_SlideFadeDelay 0.8s ease-in-out;
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
}

.text_delay_animation:nth-Child(4){
	-webkit-animation: text_SlideFadeDelay 1.0s ease-in-out;
			animation: text_SlideFadeDelay 1.0s ease-in-out;
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
}

.text_delay_animation:nth-Child(5){
	-webkit-animation: text_SlideFadeDelay 1.2s ease-in-out;
			animation: text_SlideFadeDelay 1.2s ease-in-out;
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
}

.text_delay_animation:nth-Child(6){
	-webkit-animation: text_SlideFadeDelay 1.4s ease-in-out;
			animation: text_SlideFadeDelay 1.4s ease-in-out;
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
}

.text_delay_animation:nth-Child(7){
	-webkit-animation: text_SlideFadeDelay 1.6s ease-in-out;
			animation: text_SlideFadeDelay 1.6s ease-in-out;
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
}

.text_delay_animation:nth-Child(8){
	-webkit-animation: text_SlideFadeDelay 1.8s ease-in-out;
			animation: text_SlideFadeDelay 1.8s ease-in-out;
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
}

.text_delay_animation:nth-Child(9){
	-webkit-animation: text_SlideFadeDelay 2.0s ease-in-out;
			animation: text_SlideFadeDelay 2.0s ease-in-out;
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
}

.text_delay_animation:nth-Child(10){
	-webkit-animation: text_SlideFadeDelay 2.2s ease-in-out;
			animation: text_SlideFadeDelay 2.2s ease-in-out;
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
}




@-webkit-keyframes text_SlideFadeDelay {
	0% { opacity: 0; margin-left:-1rem; }
	100% { opacity: 1; margin-left:0rem; }
}

@keyframes stext_SlideFadeDelay {
	0% { opacity: 0; margin-left:-1rem; }
	100% { opacity: 1; margin-left:0rem; } 
}




/* -------------------- H1 -------------------- */

h1{
	font-size: 3.0rem;
	line-height: 150%;
}



/* -------------------- H2 -------------------- */

h2{
	font-size: 2.6rem;
	line-height: 150%;
	font-weight: 600;
	
	margin-bottom: 2rem;
}


/* -------------------- H3 -------------------- */

h3{
	font-size: 2.2rem;
	line-height: 150%;
	margin-bottom: 1.5rem;
}


/* -------------------- H4/H5/H6 見出し設定 -------------------- */

h4{
	font-size: 1.9rem;
	margin-bottom: 1rem;
}

h5{
	font-size: 1.8rem;
	margin-bottom: 1rem;
}

h6{
	font-size: 1.7rem;
	margin-bottom: 1rem;
}

/* ---------- 記事のpノーマル ---------- */

/*コメントタグをpダグで入れる場合に使用（<p class="comment">コメント</p>）*/
p.comment {
	display: none;
}

/*右にfloatさせる　主にpタグに指定*/
.float_left{
	float: left;
	padding-right: 10px;
}

.float_none{
	float:none;
	margin-right: 0px;
}

/* ---------- 文字装飾いろいろ ---------- */

/*サイズアップ*/
.fs_100{font-size:100% !important;}
.fs_105{font-size:105% !important;}
.fs_110{font-size:110% !important;}
.fs_120{font-size:120% !important;}
.fs_130{font-size:130% !important;}
.fs_140{font-size:140% !important;}
.fs_150{font-size:150% !important;}
.fs_160{font-size:160% !important;}
.fs_170{font-size:170% !important;}
.fs_180{font-size:180% !important;}
.fs_190{font-size:190% !important;}
.fs_200{font-size:200% !important;}
.fs_210{font-size:210% !important;}
.fs_220{font-size:220% !important;}
.fs_230{font-size:230% !important;}
.fs_240{font-size:240% !important;}
.fs_250{font-size:250% !important;}
.fs_260{font-size:260% !important;}
.fs_270{font-size:270% !important;}
.fs_280{font-size:280% !important;}
.fs_290{font-size:290% !important;}
.fs_300{font-size:300% !important;}

/*サイズダウン*/
.fs_95{font-size:95%;}
.fs_90{font-size:90%;}
.fs_85{font-size:85%;}
.fs_80{font-size:80%;}
.fs_75{font-size:75%;}
.fs_70{font-size:70%;}
.fs_60{font-size:60%;}
.fs_50{font-size:50%;}
.fs_40{font-size:40%;}
.fs_30{font-size:30%;}
.fs_20{font-size:20%;}
.fs_10{font-size:10%;}

/*色*/
.fc_red{color:#de0000 !important}
.fc_blue{color:#333333 !important}
.fc_liteblue{color:rgba(48, 179, 199, 0.2) !important}
.fc_blue2{color:#46aee4 !important}
.fc_emerald{color:#52b532 !important}/*ポイントカラー1、ベタ背景色、枠線等のエメラルドグリーン　#52b532*/
.fc_skyblue{color:#6699cc !important}
.fc_green{color:#00b900 !important}
.fc_green2{color:#26A28E !important}
.fc_lightgreen,
.fc_litegreen{color:#99cc66 !important}
.fc_yellow{color:#f5f480 !important}
.fc_orange{color:#ffcc33 !important}
.fc_orange2{color:#E66000 !important}
.fc_purple{color:#663399 !important}
.fc_lightpurple,
.fc_litepurple{color:#cc99cc !important}
.fc_brown{color:#996633 !important}
.fc_gray{color:#999999 !important}
.fc_darkgray{color:#666666 !important}
.fc_white{color:#ffffff !important}

/*書体*/
/*明朝*/
.ff_sans-serif{
	font-family: 'Noto Serif JP',"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

/*ゴシック*/
.ff_serif{
	font-family: 'Noto Sans JP',YakuHanJP,"Kinto Sans","Helvetica Neue","Segoe UI",Helvetica,"游ゴシック体",YuGothic,"Yu Gothic M","游ゴシック Medium","Yu Gothic Medium","メイリオ",Meiryo,sans-serif;
}


/*左右中央揃え　text-alignの略*/
.ta_center{text-align: center !important;}
.ta_left{text-align: left !important;}
.ta_right{text-align: right !important;}


/*フォントウェイト*/
.fw_100{font-weight: 100;}
.fw_200{font-weight: 200;}
.fw_300{font-weight: 300;}
.fw_400{font-weight: 400;}
.fw_500{font-weight: 500;}
.fw_600{font-weight: 600;}
.fw_700{font-weight: 700;}
.fw_800{font-weight: 800;}
.fw_900{font-weight: 900;}

.bold,
.strong{
	font-weight: bold;
}


/*縦書きのキャッチコピー*/
.tategaki{
	display: inline-block;
	/*font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
	text-align: left;line-height: 2.0;
	margin-top: 0rem;
	background: none;-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
			writing-mode: vertical-rl;
}

.tategaki_kaijyo{
	-webkit-writing-mode:horizontal-tb;
	-ms-writing-mode:lr-tb;
	writing-mode:horizontal-tb;
}



/* ---------- 写真の配置設定 ---------- */

/*WPのメディアライブラリから挿入されたとき、自動的に挿入されるdivのclass*/
.wp-caption {
}

.wp-caption img {
	margin: 0;
	padding: 0;
	border: 0 none;max-width: 100%;
	height: auto;
}




/* ---------- 画像配置関連 キャプション付きの回し込み ---------- */

img{
	max-width: 100%;
	height: auto;
}


/*画像とキャプション両方を囲んだDIVのクラス設定：回り込み無し*/
.alignone{
	display: block;
	width: 100%!important;
	margin-bottom: 10px;
	clear: left;
}

/*画像とキャプション両方を囲んだDIVのクラス設定：中央揃え*/
.aligncenter {
	display: block;
	text-align: center;
	margin: 0 auto;
	margin-bottom: 10px;
	clear: left;
	float: none;
}

img.aligncenter {
	display: block;
	width:auto;
	text-align: center;
	margin:0 auto;
	margin-bottom: 10px;
	clear: left;
}

/* ----------写真を中央に配置---------- */
.aligncenter img {
	display: block;
	margin: 0 auto 0px auto!important;
	height: auto;
}


/*画像とキャプション両方を囲んだDIVのクラス設定：画像が右寄せになる場合*/
.alignright {
	text-align: right;
	float: right;
	padding-left: 40px;
	margin-bottom: 10px;
}

/*画像とキャプション両方を囲んだDIVのクラス設定：画像が左寄せになる場合*/
.alignleft {
	text-align: left;
	float: left;
	padding-right: 40px;
	margin-bottom: 10px;
}

/* ----------写真を左に配置---------- */
.alignleft img {
	height: auto;
	margin-bottom: 10px;
	float: none;
}

/* ----------写真を右側に配置---------- */
.alignright img {
	margin-bottom: 10px;
	float: none;
}

/*キャプションのスタイル（alignnone、alignleft、alignrightの場合）*/
.wp-caption-text,
.alignleft .wp-caption-text {
	display: block;
	text-align: left;
	font-size: 90%;
	line-height: 140%;
	color: #797979;
	clear: both;
	padding-top: 5px;
	padding-bottom: 5px;-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}


.alignright .wp-caption-text {
	display: block;
	width: 100%;
	text-align: left;
	font-size: 90%;
	line-height: 140%;
	color: #797979;
	clear: both;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/*キャプションのスタイル（aligncenterの場合）*/
.aligncenter .wp-caption-text{
	text-align: center;
	font-size: 90%;
	line-height: 140%;
	color: #797979;
	clear: both;-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/*imgにグレーの枠線*/
img.border_gray{
	border: #dadada solid 1px;
}


/*写真をトリミングして配置*/
/*JS「ofi.min.js」と併用*/
.fit {
	object-fit: cover;
	object-position: bottom;
	font-family: 'object-fit: cover; object-position: bottom;'
}


.trim {
	display: block;
	overflow: hidden;
	position: relative;
	width: 100%;
	padding-bottom: 75%;/*4:3*/
	margin-bottom: 10px;
}


.trim.w10per{
	width: 10%;
	padding-bottom: 7.5%;
}

.trim.w20per{
	width: 20%;
	padding-bottom: 15%;
}

.trim.w30per{
	width: 30%;
	padding-bottom: 22.5%;
}

.trim.w40per{
	width: 40%;
	padding-bottom: 30%;
}

.trim.w50per{
	width: 50%;
	padding-bottom: 37.5%;
}

.trim.w60per{
	width: 60%;
	padding-bottom: 45%;
}

.trim.w70per{
	width: 70%;
	padding-bottom: 52.5%;
}

.trim.w80per{
	width: 80%;
	padding-bottom: 60%;
}

.trim.w90per{
	width: 90%;
	padding-bottom: 67.5%;
}

.trim.w100per{
	width: 100%;
	padding-bottom: 75%;
}



.trim_wide {
	display: block;
	overflow: hidden;
	position: relative;
	width: 100%;
	padding-bottom: 56.625%;/*16:9*/
	margin-bottom: 10px;
}

.trim_wide.w10per{
	width: 10%;
	padding-bottom: 5.6625%;
}

.trim_wide.w20per{
	width: 20%;
	padding-bottom: 11.325%;
}

.trim_wide.w30per{
	width: 30%;
	padding-bottom: 17%;
}

.trim_wide.w40per{
	width: 40%;
	padding-bottom: 22.65%;
}

.trim_wide.w50per{
	width: 50%;
	padding-bottom: 28.3125%;
}

.trim_wide.w60per{
	width: 60%;
	padding-bottom: 33.975%;
}

.trim_wide.w70per{
	width: 70%;
	padding-bottom: 39.6375%;
}

.trim_wide.w80per{
	width: 80%;
	padding-bottom: 45.3%;
}

.trim_wide.w90per{
	width: 90%;
	padding-bottom: 50.9625%;
}

.trim_wide.w100per{
	width: 100%;
	padding-bottom: 56.625%;
}

/* 中央に合わせて、リサイズせずに、はみ出た分をトリミング(画像に対するCSS) */
.trim img,
.trim_wide img {
	position: absolute;
	width: 100%;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.alignleft.trim img,
.alignleft.trim_wide img {
	width: 98%;
	width : -webkit-calc(100% - 20px) ;
	width : calc(100% - 20px) ;
	left: 49%;
	left : -webkit-calc(50% - 10px) ;
	left : calc(50% - 10px) ;
}

.alignright.trim img,
.alignright.trim_wide img {
	width: 98%;
	width : -webkit-calc(100% - 20px) ;
	width : calc(100% - 20px) ;
	left: 49%;
	left : -webkit-calc(50% + 10px) ;
	left : calc(50% + 10px) ;
}

.alignleft.trim.w100 img,
.alignleft.trim_wide.w100 img,
.alignright.trim.w100 img,
.alignright.trim_wide.w100 img {
	position: absolute;
	width: 100%;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

/* 右寄せで写真を縦に並べるカラム状のボックス */

.photo_column_right{
	float:right;
	margin-left:30px;
}


/*画像のフチをぼかす　画像を囲んだタグに使う*/
.blur, .blur > img {
	margin: 0; padding: 0;
	border: 0;
}

.blur {
	position: relative;
	display: inline-block;
	font-size: 0;
	line-height: 0;
}

.blur:after {
	position: absolute;
	left: 0; top: 0; right: 0; bottom: 0;
	-moz-box-shadow: inset 0px 0px 15px 15px #fff;
	-webkit-box-shadow: inset 0px 0px 15px 15px #fff;
	box-shadow: inset 0px 0px 15px 15px #fff;
	content: " ";
}


/*alignleft、alignright等と併記して、横幅を%可変にする*/
.w10per{width: 10% !important;}
.w15per{width: 15% !important;}
.w20per{width: 20% !important;}
.w25per{width: 25% !important;}
.w30per{width: 30% !important;}
.w35per{width: 35% !important;}
.w40per{width: 40% !important;}
.w45per{width: 45% !important;}
.w50per{width: 50% !important;}
.w55per{width: 55% !important;}
.w60per{width: 60% !important;}
.w65per{width: 65% !important;}
.w70per{width: 70% !important;}
.w75per{width: 75% !important;}
.w80per{width: 80% !important;}
.w85per{width: 85% !important;}
.w90per{width: 90% !important;}
.w95per{width: 95% !important;}
.w100per{width: 100% !important;}
.w110per{width: 110% !important;}
.w120per{width: 120% !important;}

.w10per img,
.w20per img,
.w30per img,
.w40per img,
.w50per img,
.w60per img,
.w70per img,
.w80per img,
.w90per img,
.w100per img,
.w110per img,
.w120per img{
	width: 100%;
	max-width: 100%;
	height: auto;
}

/*横幅ピクセル指定*/
.w10px{width: 10px !important;}
.w20px{width: 20px !important;}
.w30px{width: 30px !important;}
.w40px{width: 40px !important;}
.w50px{width: 50px !important;}
.w60px{width: 60px !important;}
.w70px{width: 70px !important;}
.w80px{width: 80px !important;}
.w90px{width: 90px !important;}
.w100px{width: 100px !important;}
.w110px{width: 110px !important;}
.w120px{width: 120px !important;}
.w130px{width: 130px !important;}
.w140px{width: 140px !important;}
.w150px{width: 150px !important;}
.w160px{width: 160px !important;}
.w170px{width: 170px !important;}
.w180px{width: 180px !important;}
.w190px{width: 190px !important;}
.w200px{width: 200px !important;}
.w300px{width: 300px !important;}
.w400px{width: 400px !important;}
.w500px{width: 500px !important;}
.w600px{width: 600px !important;}


.w10px img,
.w20px img,
.w30px img,
.w40px img,
.w50px img,
.w60px img,
.w70px img,
.w80px img,
.w90px img,
.w100px img,
.w110px img,
.w120px img,
.w130px img,
.w140px img,
.w150px img,
.w160px img,
.w170px img,
.w180px img,
.w190px img,
.w200px img{
	width: 100%;
	max-width: 100%;
	height: auto;
}

.mw400px{max-width: 400px !important; width: 100%;}
.mw500px{max-width: 500px !important; width: 100%;}


/*角丸指定*/
.r1{border-radius: 1px;}
.r2{border-radius: 2px;}
.r3{border-radius: 3px;}
.r4{border-radius: 4px;}
.r5{border-radius: 5px;}
.r6{border-radius: 6px;}
.r7{border-radius: 7px;}
.r8{border-radius: 8px;}
.r9{border-radius: 9px;}
.r10{border-radius: 10px;}
.r11{border-radius: 11px;}
.r12{border-radius: 12px;}
.r13{border-radius: 13px;}
.r14{border-radius: 14px;}
.r15{border-radius: 15px;}
.r16{border-radius: 16px;}
.r17{border-radius: 17px;}
.r18{border-radius: 18px;}
.r19{border-radius: 19px;}
.r20{border-radius: 20px;}
.r25{border-radius: 25px;}
.r30{border-radius: 30px;}
.r35{border-radius: 35px;}
.r40{border-radius: 40px;}
.r50{border-radius: 50px;}



/* ---------- 記事内のテーブル設定 ---------- */

table {
	margin-bottom: 0.5rem;
	border-top: #dadada solid 1px;
	border-left: #dadada solid 0px;
}

table.table_90per {
	width: 90% !important;
}

table.table_80per {
	width: 80% !important;
}

table.table_70per {
	width: 70% !important;
}

table.table_60per {
	width: 60% !important;
}

table.table_50per {
	width: 50% !important;
}

table.table_40per {
	width: 40% !important;
}

table.table_30per {
	width: 30% !important;
}

table.table_20per {
	width: 20% !important;
}

table.table_10per {
	width: 10% !important;
}

tr {
	border-bottom: #dadada solid 1px;
	border-right: #dadada solid 0px;
}

th {
	padding: 1.8vw 2vw 1.8vw 2vw;
	/*background-color: #f9f9f9;*/
	/*white-space: nowrap;*/
	border-bottom: #dadada solid 1px;
	border-right: #dadada solid 0px;
	/*font-weight: normal !important;*/
	/*font-size: 94%;*/
}

table.noline,
table.noline tr,
table.noline td,
table.noline th{
	border: 0px !important;
}



.sub_td_bg {
}

.sub_td_bg_gray {
	background-color: #EDEDE9;
}

.sub_td_bg_white {
	background-color: #ffffff;
}


td {
	padding: 1.8vw 2vw 1.8vw 2vw;
	border-bottom: #dadada solid 1px;
	border-right: #dadada solid 0px;
	font-size: 1.7rem;
}

@media screen and ( min-width: 1400px ) {
	th,
	td {
		padding: 25px 25px 25px 25px;
		}
}

table.border-print td {
}

table.table_2column {
	margin-bottom: 0.5rem;
	border-top: #dadada solid 1px;
	border-left: #dadada solid 0px;
	width: 49%;
	float: left;
	margin-right: 1%;
}

table.table_4column {
	margin-bottom: 0.5rem;
	border-top: #dadada solid 1px;
	border-left: #dadada solid 0px;
	width: 24%;
	float: left;
	margin-right: 1%;
}


/*スマホレスポンシブ対応のテーブル*/
table.sp_responsive_table {
}

table.sp_responsive_table .sp_only {
	display: none;
}

/*改行させない*/
.nowrap,
table tr.nowrap,
table tr th.nowrap,
table tr td.nowrap,
p.nowrap,
span.nowrap{
	white-space: nowrap !important;
}

/*横並びの画像をスマホでも横並びのまま表示するtable　のstyle*/
table.table_img_2column,
table.table_img_2column tr {
	max-width: 1140px !important;
}

table.table_img_2column,
table.table_img_2column tr,
table.table_img_2column th,
table.table_img_2column td {
	border: 0px;
	border: none;
	padding: 0px 0px 0px 0px;
}

table.table_img_2column td:first-child {
	padding: 0px 10px 0px 0px;
}

table.table_img_2column td:last-child {
	padding: 0px 0px 0px 10px;
}

table.table_img_2column img{
	width: 100% !important;
	height: auto;
}


/*tableタグにこのclassが指定されているtableの中に入れ子になっているtableから罫線を取る*/
/*学科の教育科目のtableなど*/
.td_in_table td table,
.td_in_table td table th,
.td_in_table td table tr,
.td_in_table td table td{
	border: none !important;
	padding: 0px;
}

.td_in_table td table{
	margin-bottom: 0rem;
	width: auto !important;
}

.td_in_table td table td{
	margin-bottom: 0rem;
	width: 230px !important;
}

.td_in_table td table .td_bg_color_blue{
	background-color: #d8e1f1;
}


/*tdの上だけ、borderを太くする*/
table .border_top_3px{
	border-top: #dadada solid 3px !important;
}



/*一番上の項目行を左の列に可変テーブル（「no_responsive_table」と併記）*/
.td_change_table{
	width: 100%;
	border-top: #DBD8CC solid 1px;
	border-left: #DBD8CC solid 1px;
	margin-bottom: 10px !important;
}

table.td_change_table.w_auto{
	width: auto;
}

table.td_change_table tr {
	font-size:96% !important;
	line-height:150% !important;
	background-color: #ffffff;
}

table.td_change_table th {
	padding:4px 10px 4px 10px !important;
	font-size:96% !important;
	line-height:150% !important;
	white-space:nowrap !important;
border-bottom: #DBD8CC solid 1px;
	border-right: #DBD8CC solid 1px;
	background-color: #C5C2B1;color: #ffffff;
	font-weight: 600;
}

table.td_change_table td {
	padding:10px 10px 10px 10px !important;
	font-size:96% !important;
	line-height:130% !important;
border-bottom: #DBD8CC solid 1px;
	border-right: #DBD8CC solid 1px;

}

table.td_change_table td p {
	line-height:130% !important;
}




/* -------------------- 水平線画像 -------------------- */

hr{
	display:block;
	width:100%;
	height:1px;
	margin-top: 5rem;
	margin-bottom: 5rem;
	border:none;
	border:0;
	background:#dadada;
	clear:both;
	float:none;
}

hr.hr_white{
	display:block;
	width:100%;
	height:1px;
	margin-top: 5rem;
	margin-bottom: 5rem;
	border:none;
	border:0;
	background:#ffffff;
	clear:both;
	float:none;
}

hr.hr_dot,
hr.hr_dot_green{
	display:block;
	width:100%;
	height:1px;
	margin-top: 5rem;
	margin-bottom: 5rem;
	border:none;
	border-top:dotted 1px #dadada;
	color:#ffffff;
	background:#ffffff;
	clear:both;
	float:none;
}

hr.hr_dot_green{
	border-top: dotted 1px #00b900;
}

/* ---------- 記事内の横幅制限（div） ---------- */

.mw_480{
	margin: 0 auto;
	max-width: 480px;
}

.mw_580{
	margin: 0 auto;
	max-width: 580px;
}

.mw_640{
	margin: 0 auto;
	max-width: 640px;
}

.mw_740{
	margin: 0 auto;
	max-width: 740px;
}

.mw_780{
	margin: 0 auto;
	max-width: 780px;
}

.mw_860{
	margin: 0 auto;
	max-width: 860px;
}

.mw_960{
	margin: 0 auto;
	max-width: 960px;
}

.mw_1080{
	margin: 0 auto;
	max-width: 1080px;
}

.mw_1180{
	margin: 0 auto;
	max-width: 1180px;
}

/* ---------- 記事内のグレー罫線の囲み（div） ---------- */

.box_gray{
	padding:7vw 7vw 7vw 7vw;
	margin-top: 10px;
	margin-bottom: 25px;
	border: solid 1px #dadada;
}

.box_green{
	padding:7vw 7vw 7vw 7vw;
	margin-top: 10px;
	margin-bottom: 25px;
	border: solid 1px #00b900 ;
}

.box_emerald{
	padding:7vw 7vw 7vw 7vw;
	margin-top: 10px;
	margin-bottom: 25px;
	border: solid 1px #333333;
}

.box_white{
	padding:7vw 7vw 7vw 7vw;
	margin-top: 10px;
	margin-bottom: 25px;
	border: solid 0px #d2d2d2;
	background-color: #ffffff;
}

.box_gray_compact {
	padding:2.2vw 2.8vw 2.2vw 2.8vw;
	margin-top: 10px;
	margin-bottom: 25px;
	border: solid 1px #dadada;
	line-height: 160%;
}

.box_green_compact {
	padding:2.2vw 2.8vw 2.2vw 2.8vw;
	margin-top: 10px;
	margin-bottom: 25px;
	border: solid 1px #00b900;
	line-height: 160%;
}

.dot_line{
	border: dotted 2px #00b900;
	line-height: 180%;
}

.box_white_compact {
	padding:2.2vw 2.8vw 2.2vw 2.8vw;
	margin-top: 10px;
	margin-bottom: 25px;
	border: solid 0px #d2d2d2;
	line-height: 160%;
}



/* 背景が薄いグレーのボックス */
.box_bg_gray{
	padding:7vw 7vw 7vw 7vw;
	margin-top: 10px;
	margin-bottom: 25px;
	background-color:rgba(231, 228, 227, 0.5);
}

/* 背景が薄いブルーのボックス */
.box_bg_blue{
	padding:7vw 7vw 7vw 7vw;
	margin-top: 10px;
	margin-bottom: 25px;
	background-color:rgba(221, 233, 234, 0.7);
}

/* 背景が白のボックス */
.box_bg_white{
	background-color:#ffffff;
	padding:7vw 7vw 7vw 7vw;
	margin-top: 10px;
	margin-bottom: 25px;
}

/*画面幅1300px以上*/
@media (min-width: 1300px) {
	.box_gray,
	.box_green,
	.box_emerald,
	.box_white,
	.box_bg_gray,
	.box_bg_blue,
	.box_bg_white{
		padding:100px 100px 100px 100px;
	}
}

/*「box_XX」と併記して利用　角丸*/
.r2{
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
}

.r3{
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}

.r4{
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}

.r5{
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}


/*「box_gray_XX」と併記して利用*/

/*inline-blockを追加する*/
.display_ib{
	overflow: hidden;
	display: inline-block;
}

.display_ib_va{
	overflow: hidden;
	display: inline-block;
	vertical-align: top;
}

/*スマホではblock*/
.sp_display_b{
	/*display: block;*/
}

.display_b{
	display: block !important;
}

/*テキストインデントを0にする*/
.no_indent{
	text-indent: 0px;
}



/* ---------- 記事内のol ---------- */

ol {
	margin-left: 0rem !important;
	padding-left: 2.6rem;
	padding-bottom: 8px;
	list-style-type: decimal;
}

ol > li {
	padding: 2px 0px 6px 0rem;
	text-indent: 0rem;
}

ol > li > ul {
	padding-left: 1.5rem;
}


ol > li > ul li{
	list-style:none;
}

ol > li > ul li:before{
	display: inline-block;
	content: "\025cf";
	text-align: center;
	font-size: 5px;
	color: #0D468F;
	margin-right: 10px;
	vertical-align: middle;
	margin-left: -1.5rem;
}


/* ---------- 記事内のul ---------- */


ul {
	list-style:none;
	background: none;
	padding: 0px 0px 0px 0px;
	letter-spacing: -.40em;
}

ul li{
	padding-left:0px;
	/*
	background-image:url(../img/icon_32_disc_black.png) ;
	background-size: 16px 16px;
	*/
	background-repeat:no-repeat;
	background-position:0 6px;
	letter-spacing: normal;
}



ul.disc {
	padding-left: calc(1.5rem + 10px);
}

ul.disc li{
	display: flex;
	list-style:none;
	line-height: 160%;
	padding-bottom: 1rem;
}

ul.disc li:before{
	display: inline-block;
	content: "\025cf";
	text-align: center;
	font-size: 5px;
	margin-right: 10px;
	width: 1.5rem;
	height: 5px;
	margin-left: calc(-1 * (1.5rem + 10px));
	margin-top: 2px;
	vertical-align: middle;
}

ul.circle_green {
	padding-left: 2.5rem;
}

ul.circle_green li{
	list-style:none;
	line-height: 180%;
	margin-bottom: 5px;
}

ul.circle_green li:before{
	display: inline-block;
	content: "\025cf";
	text-align: center;
	font-size: 14px;
	width: 1rem;
	margin-right: 1.5rem;
	margin-left: -2.5rem;
	vertical-align: top;	
	color: #62d400 !important;
}

ul.bottom_line_gray{
	border-top: solid 1px #d7dad0;/*スマホでは0pxに*/
}

ul.bottom_line_gray li{
	position: relative;
	padding: 1rem 0rem 1.5rem 1rem;
}

ul.bottom_line_gray li:after{
	content:"";
	position: absolute;
	left: -1.5rem;
	right: 0;
	bottom: 0;
	height: 1px;
	border-bottom: solid 1px #d7dad0;
}





ul.list_inline5 li {
	display: inline-block;
	width: 20%;
}

/*画面幅940px未満*/
@media (max-width: 940px) {
	ul.list_inline5 li {
		width: 25%;
	}
}

/*画面幅414px未満*/
@media (max-width: 414px) {
	ul.list_inline5 li {
		width: 100%;
	}
}


ul li:before{	
}

 ul.float{
	float: none;
	clear: both;
}

 ul.float li {
	display: inline-block;
	padding: 2px 10px 4px 0px;
	float: left;
	background:none;
}


/*先頭のディスクを付けない場合、ulにこのclassを指定「no_disc」*/
ul.no_disc {
	padding-left: 2rem;
}

ul.no_disc li {

}

ul.no_disc li:before {
	content:none;
}

ul.no_disc li ul li {

}

/* ---------- 記事内のア、イ、ウ…のliのul ---------- */

.list_50on,
ul li .list_50on {
	margin-left: 0 !important;
	padding-left: 0 !important;
	list-style:none !important;
	background: none !important;
}

.list_50on li,
 ul li .list_50on li {
	padding-left: 1rem !important;
	text-indent: -1rem !important;
	list-style:none !important;
	background: none !important;
}


/* ---------- ulを○文字分で揃えるのliのul ---------- */

.list_1em,
ul li .list_1em,
.list_1rem,
ul li .list_1rem {
	margin-left: 0 !important;
	padding-left: 0 !important;
	list-style:none !important;
	background: none !important;
}

span.list_1em,
.list_1em li,
 ul li .list_1em li,
 span.list_1rem,
.list_1rem li,
 ul li .list_1rem li {
	padding-left: 1.0rem !important;
	text-indent: -1.0rem !important;
	list-style:none !important;
	background: none !important;
}

.list_1_5em,
ul li .list_1_5em,
.list_1_5rem,
ul li .list_1_5rem {
	margin-left: 0 !important;
	padding-left: 0 !important;
	list-style:none !important;
	background: none !important;
}

span.list_1_5em,
.list_1_5em li,
 ul li .list_1_5em li,
 span.list_1_5rem,
.list_1_5rem li,
 ul li .list_1_5rem li {
	padding-left: 1.5rem !important;
	text-indent: -1.5rem !important;
	list-style:none !important;
	background: none !important;
}

.list_2em,
ul li .list_2em,
.list_2rem,
ul li .list_2rem {
	margin-left: 0 !important;
	padding-left: 0 !important;
	list-style:none !important;
	background: none !important;
}

span.list_2em,
.list_2em li,
 ul li .list_2em li,
 span.list_2rem,
.list_2rem li,
 ul li .list_2rem li {
	padding-left: 2.0rem !important;
	text-indent: -2.0rem !important;
	list-style:none !important;
	background: none !important;
}


.list_2_5em,
ul li .list_2_5em,
.list_2_5rem,
ul li .list_2_5rem {
	margin-left: 0 !important;
	padding-left: 0 !important;
	list-style:none !important;
	background: none !important;
}

span.list_2_5em,
.list_2_5em li,
 ul li .list_2_5em li,
 span.list_2_5rem,
.list_2_5rem li,
 ul li .list_2_5rem li {
	padding-left: 2.5rem !important;
	text-indent: -2.5rem !important;
	list-style:none !important;
	background: none !important;
}

.list_3em,
ul li .list_3em,
.list_3rem,
ul li .list_3rem {
	margin-left: 0 !important;
	padding-left: 0 !important;
	list-style:none !important;
	background: none !important;
}

span.list_3em,
.list_3em li,
 ul li .list_3em li,
 span.list_3rem,
.list_3rem li,
 ul li .list_3rem li {
	padding-left: 3.0rem !important;
	text-indent: -3.0rem !important;
	list-style:none !important;
	background: none !important;
}

.list_4em,
ul li .list_4em,
.list_4rem,
ul li .list_4rem {
	margin-left: 0 !important;
	padding-left: 0 !important;
	list-style:none !important;
	background: none !important;
}

span.list_4em,
.list_4em li,
 ul li .list_4em li,
 span.list_4rem,
.list_4rem li,
 ul li .list_4rem li {
	padding-left: 4.0rem !important;
	text-indent: -4.0rem !important;
	list-style:none !important;
	background: none !important;
}


/* ---------- 記事内の注釈 ---------- */

.annotate {
	/*padding: 6px 0px 6px 0px;*/
	font-size: 90%;
	color: #555;
}

.indent_1em,
.indent_1rem{
	padding-left: 1.0rem !important;
	text-indent: -1.0rem !important;
}

.indent_1_5em,
.indent_1_5rem{
	padding-left: 1.5rem !important;
	text-indent: -1.5rem !important;
}

.indent_2em,
.indent_2rem{
	padding-left: 2rem !important;
	text-indent: -2rem !important;
}

.indent_2_5em,
.indent_2_5rem{
	padding-left: 2.5rem !important;
	text-indent: -2.5rem !important;
}

.indent_3em,
.indent_3rem{
	padding-left: 3rem !important;
	text-indent: -3rem !important;
}

.indent_3_5em,
.indent_3_5rem{
	padding-left: 3.5rem !important;
	text-indent: -3.5rem !important;
}

.indent_4em,
.indent_4rem{
	padding-left: 4rem !important;
	text-indent: -4rem !important;
}

.indent_4_5em,
.indent_4_5rem{
	padding-left: 4.5rem !important;
	text-indent: -4.5rem !important;
}

.indent_8em,
.indent_8rem{
	padding-left: 8rem !important;
	text-indent: -8rem !important;
}

.indent_8_5em,
.indent_8_5rem{
	padding-left: 8.5rem !important;
	text-indent: -8.5rem !important;
}

.indent_9em,
.indent_9rem{
	padding-left: 9rem !important;
	text-indent: -9rem !important;
}

span.indent_1em,
span.indent_1rem,
span.indent_1_5em,
span.indent_1_5rem,
span.indent_2em,
span.indent_2rem,
span.indent_2_5em,
span.indent_2_5rem,
span.indent_3em,
span.indent_3rem,
span.indent_3_5em,
span.indent_3_5rem,
span.indent_4em,
span.indent_4rem,
span.indent_4_5em,
span.indent_4_5rem,
span.indent_8em,
span.indent_8rem,
span.indent_8_5em,
span.indent_8_5rem,
span.indent_9em,
span.indent_9rem{
	display: block;
}



/*背景色付の項目見出し　span*/
.item_red,
.item_blue,
.item_skyblue,
.item_emerald,
.item_green,
.item_lightgreen,
.item_litegreen,
.item_orange,
.item_orange2,
.item_purple,
.item_lightpurple,
.item_litepurple,
.item_brown,
.item_gray,
.item_darkgray,
.item_white,
.item_subject1,
.item_subject2,
.item_subject3,
.item_subject4{
	display: inline-block;
	position: relative;
	text-align: center;
	/*vertical-align: text-top ;*/
	padding: 4px 4px 4px 4px;
	margin-top: 0px;
	line-height: 100% !important;
	background-color: #52b532;
	letter-spacing: 0.05rem;
	letter-spacing: 0.05rem;
	text-indent: 0.05rem;
	min-width: 8rem;
	margin-right: 10px;
	font-size: 1.1rem;
	color: #FFFFFF;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
}

/*上記と併用して利用。Sサイズ*/
.item_s{
	padding: 4px 4px 4px 4px;
	min-width: 70px;
	margin-right: 10px;
	top: -2px;
	font-size: 1.1rem;
	color: #FFFFFF;
}

/*上記と併用して利用。Mサイズ*/
.item_m{
	padding: 4px 4px 4px 4px;
	min-width: 70px;
	top: -1px;
	margin-right: 10px;
	font-size: 1.4rem;
	color: #FFFFFF;
}

/*上記と併用して利用。Lサイズ*/
.item_l{
	padding: 6px 10px 6px 10px;
	min-width: 80px;
	margin-top: -4px;
	margin-right: 10px;
	font-size: 1.5rem;
	color: #FFFFFF;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}

.item_red{
	background-color: #ff3333;
}

.item_blue{
	background-color: #018BCE;
}

.item_skyblue{
	background-color: #6699cc;
}

.item_emerald{
	background-color: #333333;
}

.item_green{
	background-color: #333333;
}

.item_lightgreen,
.item_litegreen{
	background-color: #99cc66;
}

.item_orange{
	background-color: #ff9900;
}

.item_orange2{
	background-color: #ffcc33;
}

.item_purple{
	background-color: #663399;
}

.item_lightpurple,
.item_litepurple{
	background-color: #cc99cc;
}

.item_brown{
	background-color: #996633;
}

.item_gray{
	background-color: #999999;
}

.item_darkgray{
	background-color: #666666;
}

.item_white{
	color: #333333;
	background-color: #ffffff;
	border: 1px solid #dadada;
}


.flex{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
	position: relative;
}

.flex ul,
.flex ol,
.flex div{
	padding-right: 4vw;
}

/* ---------- div内で2列にならべるdiv ---------- */

/*2列全体　div*/
.text_box_2column{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
	position: relative;
}

.text_box_2column .column_inner{
	display: inline-block;
	position: relative;
	position: relative;
	width: 47%;
	margin-right: 6%;
}

.text_box_2column .column_inner:nth-child(2n){
	margin-right: 0%;
}

.text_box_2column.column_6_4 .column_inner:nth-child(1n){
	width: 54%;
}

.text_box_2column.column_6_4 .column_inner:nth-child(2n){
	width: 40%;
}

.text_box_2column.column_7_3 .column_inner:nth-child(1n){
	width: 68%;
}

.text_box_2column.column_7_3 .column_inner:nth-child(2n){
	width: 26%;
}


.text_box_2column .column_inner:nth-child(2n){
	margin-right: 0%;
}

.text_box_2column.column_4_6 .column_inner:nth-child(1n){
	width: 44%;
}

.text_box_2column.column_4_6 .column_inner:nth-child(2n){
	width: 50%;
}

.text_box_2column.column_3_7 .column_inner:nth-child(1n){
	width: 26%;
}

.text_box_2column.column_3_7 .column_inner:nth-child(2n){
	width: 68%;
}


/* ---------- div内で3列にならべるdiv ---------- */

/*3列全体　div*/
.text_box_3column,
.text_box_3column_narrow,
.text_box_3column_widthauto{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
	position: relative;
}

.text_box_3column_left,/*左*/
.text_box_3column_center,/*中央*/
.text_box_3column_right,/*右*/
.text_box_3column .column_inner,
.text_box_3column_widthauto .column_inner{
	display: inline-block;
	position: relative;
	overflow: hidden;
	position: relative;
	width: 30%;
	margin-right: 5%;
	margin-bottom: 2%;
}

.text_box_3column_narrow .column_inner{
	width: 33%;
	margin-right: 0.5%;
}

.text_box_3column_widthauto .column_inner{
	width: auto;
	margin-right: 5%;
}



.text_box_3column_right,
.text_box_3column .column_inner:nth-child(3n),
.text_box_3column_narrow .column_inner:nth-child(3n),
.text_box_3column_widthauto .column_inner:nth-child(3n){
	margin-right: 0%;
}

.text_box_3column_left img,
.text_box_3column_center img,
.text_box_3column_right img,
.text_box_3column .column_inner img,
.text_box_3column_narrow .column_inner img,
.text_box_3column_widthauto .column_inner img{
	width: 100%;
	height: auto;
}



/* ---------- div内で4列にならべるdiv ---------- */

/*4列全体　div*/
.text_box_4column{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
	position: relative;
}

.text_box_4column_1,/*左*/
.text_box_4column_2,/*中央*/
.text_box_4column_3,/*中央*/
.text_box_4column_4,/*右*/
.text_box_4column .column_inner{
	display: inline-block;
	position: relative;
	overflow: hidden;
	position: relative;
	width: 21.25%;
	margin-right: 5%;
	margin-bottom: 2%;
}

.text_box_4column_4,
.text_box_4column .column_inner:nth-child(4n){
	margin-right: 0%;
}

.text_box_4column_1 img,
.text_box_4column_2 img,
.text_box_4column_3 img,
.text_box_4column_4 img,
.text_box_4column .column_inner img{
	width: 100%;
	height: auto;
}


/*box_grayを併用した場合の調整*/
.column_inner.box_gray,
.box_gray.column_inner{
	margin-top: 0px;
}

.column_inner .button{
}



/* ----------リンクとダウンロードファイルのアイコン---------- */
/*aタグ用*/

/* ----------リンクとダウンロードファイルのアイコン---------- */

/*aタグ用*/

/*テキスト基本リンク*/

.icon_link:after {
	font-family: "Material Symbols Outlined";
	content: "\e5e1";
	display: inline-block;
	position: relative;
	width: 14px;
	height: 14px;
	font-size: 12px;
	margin-left: 5px;
	top: -2px;
	vertical-align: middle;
	line-height: normal;
}

.icon_link:hover {
	text-decoration: underline
}


/*blank*/
.icon_blank:after {
	font-family: "Material Symbols Outlined";
	content: "\e3e0";
	display: inline-block;
	position: relative;
	width: 14px;
	height: 14px;
	font-size: 14px;
	margin-left: 5px;
	top: -2px;
	vertical-align: middle;
	line-height: normal;
}

/*mail*/
.icon_mail:after {
	font-family: "Material Symbols Outlined";
	content: "\e158";
	display: inline-block;
	position: relative;
	width: 14px;
	height: 14px;
	font-size: 15px;
	margin-left: 5px;
	top: -3px;
	vertical-align: middle;
	line-height: normal;
}

/*pdf*/
.icon_pdf:after {
	font-family: "Material Symbols Outlined";
	content: "\e873";
	display: inline-block;
	position: relative;
	width: 16px;
	height: 16px;
	font-size: 18px;
	margin-left: 5px;
	top: -4px;
	vertical-align: middle;
	line-height: normal;
}

/*tel*/
.icon_tel:after {
	font-family: "Material Symbols Outlined";
	content: "\e0b0";
	display: inline-block;
	position: relative;
	width: 14px;
	height: 14px;
	font-size: 16px;
	margin-left: 5px;
	top: -4px;
	vertical-align: middle;
	line-height: normal;
}

/*search*/
.icon_search:after {
	font-family: "Material Symbols Outlined";
	content: "\e8b6";
	display: inline-block;
	position: relative;
	width: 18px;
	height: 18px;
	font-size: 18px;
	margin-left: 5px;
	top: -3px;
	vertical-align: middle;
	line-height: normal;
}

/*picture_zoom*/
.icon_picture_zoom:after {
	font-family: "Material Symbols Outlined";
	content: "\e3d3";
	display: inline-block;
	position: relative;
	width: 14px;
	height: 14px;
	font-size: 16px;
	margin-left: 5px;
	top: -3px;
	vertical-align: middle;
	line-height: normal;
}

/*基本ボタン　背景緑、罫なし*/
.button {
	display: inline-block;
	position: relative;
	text-align: center;
	font-size: 1.5rem;
	line-height: 130%;
	font-weight: normal;
	color: #ffffff !important;
	background-color: #00b900 !important;
	border: solid 0px #333333 !important;
	padding: 14px 2vw 14px 2vw;
	min-width: 200px;
	text-decoration: none;
	margin-top: 6px;
	margin-bottom: 6px;
	box-shadow: 0 0px 3px 2px rgba(0, 0, 0, 0.2);
	z-index: 1;
	  
	  overflow: hidden;
	  transition: .3s;
border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
}

.button.emerald {
	background-color: #52b532 !important;
	border: solid 1px #52b532 !important;
}

.button_green_big{
	display: inline-block;
	position: relative;
	text-align: center;
	font-size: 1.8rem;
	line-height: 130%;
	font-weight: 600;
	font-weight: normal;
	color: #ffffff !important;
	background: url("../img/parts_bg_1.jpg") center center;
	background-size: 320px 320px;
	padding: 22px 52px 22px 52px;
	min-width: 300px;
	text-decoration: none;

	pointer-events: visible;
	overflow: hidden;
	border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
	
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	
	z-index: 1;
}

.button_green_big:after{
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.button_green_big:before{
	font-family: "Material Symbols Outlined";
	content: "\e5e1";
	display: inline-flex; /* 子要素をflexboxで揃える */
	flex-direction: column; /* 子要素をflexboxにより縦並びに揃える */
	justify-content: center; /* 子要素をflexboxにより上下中央に配置する */
	align-items: center;  /* 子要素をflexboxにより左右中央に配置する*/
	position: absolute;
	color: #ffffff;
	width: 18px;
	height: 18px;
	font-size: 18px;
	font-weight: 600;
	top: calc(50% - 9px);
	right: 20px;
	vertical-align: middle;
	line-height: normal;
	border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
}

.button_green_big:hover,
.button_green_big:hover:before{
	opacity: 0.9;
}



/*ボタンのときのアイコンの色*/
a.button.icon_link:after,
a.button.icon_blank:after,
a.button.icon_mail:after,
a.button.icon_pdf:after,
a.button.icon_tel:after,
a.button.icon_search:after,
a.button.icon_picture_zoom:after {
	color: #ffffff !important;
}

.button:hover {
	color: #ffffff !important;
	text-decoration: none;
	border: solid 0px #afafaf !important;
	background-color: #ffffff !important;
	color: #00b900 !important;
}

.button:hover.emerald {
	color: #ffffff !important;
	text-decoration: none;
	background-color: #27afa0 !important;
	border: solid 1px #27afa0 !important;
}


/*hoverしたときのボタンのときのアイコンの色*/
a.button.icon_link:hover:after,
a.button.icon_blank:hover:after,
a.button.icon_mail:hover:after,
a.button.icon_pdf:hover:after,
a.button.icon_tel:hover:after,
a.button.icon_search:hover:after,
a.button.icon_picture_zoom:hover:after {
	color: #00b900 !important;
}


/*基本ボタン　背景白、罫白*/
.button_white {
	display: inline-block;
	position: relative;
	text-align: center;
	font-size: 1.5rem;
	line-height: 130%;
	font-weight: normal;
	color: #333333 !important;
	background-color: #ffffff !important;
	border: solid 0px #ffffff !important;
	padding: 14px 2vw 14px 2vw;
	min-width: 200px;
	text-decoration: none;
	margin-top: 6px;
	margin-bottom: 6px;
	box-shadow: 0 0px 3px 2px rgba(0, 0, 0, 0.2);
	z-index: 1;
	  
	  overflow: hidden;
	  transition: .3s;
		border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
}


/*ボタンのときのアイコンの色*/
a.button_white.icon_link:after,
a.button_white.icon_blank:after,
a.button_white.icon_mail:after,
a.button_white.icon_pdf:after,
a.button_white.icon_tel:after,
a.button_white.icon_search:after,
a.button_white.icon_picture_zoom:after {
	color: #333333 !important;
}

.button_white:hover {
	color: #ffffff !important;
	text-decoration: none;
	border: solid 0px #afafaf !important;
	background-color: #00b900 !important;
}

/*hoverしたときのボタンのときのアイコンの色*/
a.button_white.icon_link:hover:after,
a.button_white.icon_blank:hover:after,
a.button_white.icon_mail:hover:after,
a.button_white.icon_pdf:hover:after,
a.button_white.icon_tel:hover:after,
a.button_white.icon_search:hover:after,
a.button_white.icon_picture_zoom:hover:after {
	color: #ffffff !important;
}




/*右に緑丸の矢印がつくリンク*/
.icon_link_aftermark{
	display: inline-block;
	position: relative;
	color: #74d728;
	text-decoration: none;
	padding-right: 48px;
	font-weight: 600;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.icon_link_aftermark:before {
	content: "";
	display: block;
	position: absolute;
	background-color: #74d728;
	width: 38px;
	height: 38px;
	top: -4px;
	right: 0px;
	vertical-align: middle;
	line-height: normal;
	border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.icon_link_aftermark:after {
	font-family: "Material Symbols Outlined";
	content: "\e5e1";
	display: inline-flex; /* 子要素をflexboxで揃える */
	flex-direction: column; /* 子要素をflexboxにより縦並びに揃える */
	justify-content: center; /* 子要素をflexboxにより上下中央に配置する */
	align-items: center;  /* 子要素をflexboxにより左右中央に配置する*/
	position: absolute;
	color: #ffffff;
	width: 38px;
	height: 38px;
	font-size: 16px;
	top: -4px;
	right: 0px;
	vertical-align: middle;
	line-height: normal;
	border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
}
	

.icon_link_aftermark:hover{
	color: color(display-p3 0.325 0.71 0.204);
}

.icon_link_aftermark:hover:before {
	background-color: color(display-p3 0.325 0.71 0.204);
}





.sp_only,
.sp_only {
	display:none;
}

.pc_only,
.pc_only {
}

.print_only,
.print_only {
	display:none;
}

/*PCの「p」だけマージンボトム20、スマホは0*/
.pc_only_mb20,
.pc_only_mb20 {
	margin-bottom:20px;
}









/* ---------- 要素の上下マージン ---------- */

/*p {
	margin-bottom:20px;
}*/

.mb200{
	margin-bottom:120px !important;
}

.mb180{
	margin-bottom:180px !important;
}

.mb150{
	margin-bottom:150px !important;
}

.mb120{
	margin-bottom:120px !important;
}

.mb100{
	margin-bottom:100px !important;
}

.mb90{
	margin-bottom:90px !important;
}

.mb80{
	margin-bottom:80px !important;
}

.mb70{
	margin-bottom:70px !important;
}

.mb60{
	margin-bottom:60px !important;
}

.mb50{
	margin-bottom:50px !important;
}

.mb40{
	margin-bottom:40px !important;
}

.mb30{
	margin-bottom:30px !important;
}

.mb20{
	margin-bottom:20px !important;
}

.mb15{
	margin-bottom:15px !important;
}

.mb10{
	margin-bottom:10px !important;
}

.mb5{
	margin-bottom:5px !important;
}

.mb0{
	margin-bottom:0px !important;
}

.mt0 {
	margin-top:0px !important;
}

.mt5 {
	margin-top:5px !important;
}

.mt10 {
	margin-top:10px !important;
}

.mt20 {
	margin-top:20px !important;
}

.mt30 {
	margin-top:30px !important;
}

.mt40 {
	margin-top:40px !important;
}

.mt50 {
	margin-top:50px !important;
}

.mt60 {
	margin-top:60px !important;
}

.mt70 {
	margin-top:70px !important;
}

.mt80 {
	margin-top:80px !important;
}

.mt90 {
	margin-top:90px !important;
}

.mt100 {
	margin-top:100px !important;
}

.mt-10 {
	margin-top:-10px !important;
}

.mt-20 {
	margin-top:-20px !important;
}

.mt-30 {
	margin-top:-30px !important;
}

.mt-40 {
	margin-top:-40px !important;
}

.mt-50 {
	margin-top:-50px !important;
}

.mt-60 {
	margin-top:-60px !important;
}

.mt-70 {
	margin-top:-70px !important;
}

.mt-80 {
	margin-top:-80px !important;
}

.mt-90 {
	margin-top:-90px !important;
}

.mt-100 {
	margin-top:-100px !important;
}

.mr3{
	margin-right: 3px;
}

.mr5{
	margin-right: 5px;
}

.mr10{
	margin-right: 10px;
}

.pr_1rem{
	padding-right: 1rem;
}

.pr_2rem{
	padding-right: 2rem;
}

.pr_3rem{
	padding-right: 3rem;
}

.pr_4rem{
	padding-right: 4rem;
}

.pr_5rem{
	padding-right: 5rem;
}

.pr_0rem{
	padding-right: 0rem !important;
}

.pb0{
	padding-bottom: 0px !important;
}


/* --------------------
	
ページ内アンカーの飛び先

-------------------- */

.anchor{
	margin-top: -80px;
	padding-top: 80px;
}


/* --------------------
	
googleマップ、youtube動画等のiframe埋め込み

-------------------- */

/*youtube配置欄　div*/
/*※横幅を調整したい場合はこのdivに指定する*/
.youtube_box,
.mainvisual_box{
	display: block;
	position: relative;
	margin: 0 auto;
}

.youtube_box_inner,
.mainvisual_box_inner{
	display: block;
	position: relative;
	width: 100%;
	height: auto !important;
	padding-bottom: 56.25%;
	margin: 0 auto;
}

.youtube_box iframe,
.mainvisual_box iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}



/*googleマップ配置欄　div*/
.map_box{
	display: block;
	position: relative;
	width: 100%;
	height: auto !important;
	padding-bottom: 45vh;
	margin: 0 auto;
	background-color: #dfdfdf;
}


.map_box iframe,
.map_box object,
.map_box embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}



/*--------------------------------

トップページ専用スタイル

--------------------------------*/


/*--------------- トップページのみのスタイル（メインビジュアル） ---------------*/

/*section*/
.mainvisual_area{
	position: relative;
	padding-top: 120px;
	padding-bottom: 40px;
	background: url("../img/bg_green.jpg") center top;
	background-size: 1600px 716px;
	z-index: 0;
}

.mainvisual_area:after{
	content:"";
	display: block;
	position: absolute;
	bottom:-2px;
	left: 0;
	right: 0;
	aspect-ratio: 1600 / 100;/*縦横比固定*/
	background: url("../img/bg_wave_bottom_white_line.svg"),url("../img/bg_wave_bottom_white.svg");
	background-size: 1600px auto,1600px auto;
	background-position: center bottom,center bottom;
	background-repeat: repeat-x,no-repeat;
}

/*画面幅1600px未満*/
@media (max-width: 1600px) {
	.mainvisual_area:after{
		background: url("../img/bg_wave_bottom_white_line.svg"),url("../img/bg_wave_bottom_white.svg");
		background-size: contain,contain;
	}
}

/*
.mainvisual_area:after{
	content:"";
	display: block;
	position: absolute;
	left:0;
	right: 0;
	bottom: 0;
	height: 60%;
	background: url("../img/bg.png") no-repeat top 50% right;
	background-size: 40%;
	background-color: rgb(225, 221, 222);
	z-index: -1;
}
*/
		
.mainvisual_box{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
	position: relative;
	width: 100%;
	max-width: 1600px;
	margin: 0 auto;
	letter-spacing: normal;
	
	background: url("../img/bg_object_1.png"),url("../img/bg_object_1_white.png");
	background-repeat: no-repeat,no-repeat;
	background-position: 35% 5%, left 10% bottom 5%;
	background-size: 215px 190px,158px 153px;
}


.mainvisual_catchcopy_box{
	display: inline-block;
	position: relative;
	vertical-align: top;
	letter-spacing: normal;
	text-align: center;
	width: 34%;
	padding-top: 6%;
	padding-left: 12%;
	letter-spacing: normal;
}


.mainvisual_catchcopy{
	display: inline-block;
	text-align: left;
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 2.0;
	margin-top: 0rem;
	letter-spacing: 0.2em;
	-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
			writing-mode: vertical-rl;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.mainvisual_catchcopy span{
	color:color(display-p3 0.306 0.714 0.2);
	font-size: 4rem;
}

/*画面幅1380px未満*/
@media (max-width: 1380px) {
	.mainvisual_catchcopy{
		font-size: 2.8rem;
	}
	.mainvisual_catchcopy span{
		font-size: 3.4rem;
	}
}

/*画面幅1080px未満*/
@media (max-width: 1080px) {
	.mainvisual_catchcopy{
		font-size: 2.4rem;
	}
	.mainvisual_catchcopy span{
		font-size: 3.0rem;
	}
}



.main_visual/*「.slick-slider」*/
{
	display: flex; /* 追加 */
	align-items: center; /* 追加 */
	overflow: hidden;
	width: 66%;
	padding: 6% 11% 6% 7%;
}

.slick-list{
	overflow: hidden;
	border-radius: 5vw;
	-webkit-border-radius: 5vw;
	-moz-border-radius: 5vw;
}

.slick-list{
	
}

.slick-slide{

}

.main_visual_1box{
	width: 100%;
	aspect-ratio: 750 / 460;/*縦横比固定*/
}


.main_visual_1box img{
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 106%;
	height: auto;	
}


/*フェード切り替え時ズーム演出*/
@keyframes fadezoom {
	0% {
	 transform: scale(1.06);
	}
	100% {
	 transform: scale(1.02); /* 拡大率1.1 */
	}
}
.add-animation {
	animation: fadezoom 5s 0s forwards;
}


.visual_navi_box{
	display: none;
	/*
	display: block;
	position: absolute;
	bottom: 0;
	left: 0px;
	right: 0px;
	*/
}

.mainvisual_catchcopy_e_box{
	display: inline-block;
	position: absolute;
	top:0px;
	right: 0px;
	padding-top: 2%;
	padding-right: 3%;
	text-align: right;
	vertical-align: top;
}

.mainvisual_catchcopy_e1{
	display: inline-block;
	font-family: "Sen", sans-serif;
	color: #ffffff;
	font-size: 3.8rem;
	font-weight: 100;
	line-height: 100%;
	vertical-align: top;
	letter-spacing: 0.1em;
}

.mainvisual_catchcopy_e2{
	display: inline-block;
	font-family: "Sen", sans-serif;
	color: #ffffff;
	font-size: 5.7vw;
	font-weight: 100;
	text-align: right;
	line-height: 100%;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		letter-spacing: 0.1em;
}

/*画面幅1700px以上*/
@media (min-width: 1700px) {
	.mainvisual_catchcopy_e2{
		font-size: 9.4rem;
	}
}

/*画面幅1330px未満*/
@media (max-width: 1320px) {
	.mainvisual_catchcopy_e_box{
		padding-top: 1%;
	}
	.mainvisual_catchcopy_e1{
	}
	.mainvisual_catchcopy_e2{
	}
}



/*--------------- トップページ構成要素の共通パーツ ---------------*/

.title_box{
	display: inline-block;
	position: relative;
	vertical-align: top;
	letter-spacing: normal;
	margin-bottom: 40px;
}

.section_title_e{
	display: inline-block;
	position: relative;
	font-family: "Sen", sans-serif;
	font-size: 4.8rem;
	font-weight: 400;
	line-height: 120%;
	margin-bottom: 10px;
	letter-spacing: 0rem;
	color: #00b900;
}

.section_title{
	display: block;
	position: relative;
	font-family: "Sen", sans-serif;
	font-size: 1.5rem;
	font-weight: 600;
}

/*--------------- トップページの導入部分 ---------------*/

.introduction{
	display: block;
	position: relative;
	margin: 0 auto;
	margin-bottom: 0px;
	padding: 90px 90px 100px 90px;
	z-index: 0;
}

.introduction:before{
	content:"";
	display: block;
	position: absolute;
	top:30px;
	right: -10%;
	width: 53%;
	aspect-ratio: 1600 / 1160;/*縦横比固定*/
	background: url("../img/bg_object_3.jpg") no-repeat right top;
	background-size: contain;
}

.introduction .section_inner{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
	position: relative;
	margin: 0 auto;
	max-width: 1180px;
	margin-top: -100px;
	
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

/*1600px以上*/
@media (min-width: 1600px) {
	.introduction .section_inner{
	}
}

.introduction .section_inner .section_inner_left,
.introduction .section_inner .section_inner_right{
	display: inline-block;
	position: relative;
	vertical-align: top;
	letter-spacing: normal;
}

.introduction .section_inner .section_inner_left{
	display: flex;
	justify-content: flex-end; /*右寄せ*/
	width: 29%;
}

.introduction .section_inner .section_inner_right{
	width: 60%;
	padding-left: 6vw;
	padding-top: 100px;
}

.introduction_img{
	display: block;
	position: relative;
	width: 100%;
	margin-right: 0;
	max-width: 300px;
}

.introduction_catchcopy{
	font-size: 1.8rem;
	line-height: 220%;
	font-weight: 600;
	letter-spacing: 0.1rem;
}

/*1600px以上*/
@media (min-width: 1600px) {
	.introduction .section_inner .section_inner_right{
		padding-left: 110px;
		
	}
}

/*画面幅1500px未満*/
@media (max-width: 1500px) {
	.introduction .section_inner{
		right: -2vw;
	}
}


/*画面幅1280x未満*/
@media (max-width: 1280px) {
	.introduction .section_inner .section_inner_right{
		width: 71%;
	}
}




/*--------------- トップページの「TOPICS」 ---------------*/

.frontpage_topics{
	display: block;
	position: relative;
	margin: 0 auto;
	margin-bottom: 100px;
	padding: 0px 90px 0px 90px;
	background: url("../img/bg_object_2.jpg") no-repeat left 40px;
	background-size: 22% auto;
	z-index: 1;
}

.frontpage_topics .section_inner{
	display: block;
	position: relative;
	margin: 0 auto;
	max-width: 1280px;
	z-index: 1;
}

.frontpage_topics .title_box{
	margin-bottom: 20px;
}

.frontpage_topics .section_title{

}

.frontpage_topics_link_box{
	display: inline-block;
	position: absolute;
	top:-100px;
	right: 0;
	z-index: 2;
}

.frontpage_topics_content_box{
	display: block;
	position: relative;
	max-width: 1180px;
	padding-left: 20%;
}

.frontpage_topics_list_box {
	display: block;
	position: relative;
	margin: 0 auto;
}

.frontpage_topics_list {
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	letter-spacing: -.40em;
}

.frontpage_topics_list li {
	display: inline-block;
	position: relative;
	letter-spacing: normal;
	vertical-align: top;
	width: 100%;
	border-bottom: solid 1px #00b900;
	padding-top: 2.2rem;
	padding-bottom: 1.6rem;
}

.frontpage_topics_list li:first-of-type {
	border-top: solid 1px #00b900;
}

.frontpage_topics_list .title {
	font-size: 1.6rem;
	font-weight: 600;
	color: #000000;
	vertical-align: middle;
	line-height: 160%;
	padding-bottom: 5px;
}

.title.new:after {
	content:"NEW";
	display: inline-block;
	display: inline-block;
	position: relative;
	text-align: center;
	/*vertical-align: text-top ;*/
	padding: 4px 4px 4px 4px;
	top: -1px;
	line-height: 100% !important;
	background-color: #ffffff;
	letter-spacing: 0.05rem;
	letter-spacing: 0.05rem;
	text-indent: 0.05rem;
	min-width: 30px;
	margin-left: 6px;
	font-size: 1.1rem;
	color: #3f3f3f;
	border: solid 1px #a8a8a8;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
}



.frontpage_topics_list .date {
	display: inline-block;
	position: relative;
	font-family: "Sen", sans-serif;
	font-weight: 500;
	font-size: 2.0rem;
	color: #00b900;
	margin-right: 6px;
	margin-bottom: 15px;
	vertical-align: middle;
	line-height: 100%;
}


.genre {
	display: inline-block;
	position: relative;
	text-align: center;
	font-size: 1.40rem;
	line-height: 100%;
	font-weight: normal;
	color: #ffffff !important;
	background-color: #00b900 !important;
	padding: 6px 1.5rem 6px 1.5rem;
	min-width: 86px;
	text-decoration: none;
	vertical-align: top;
	top: -4px;
	border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
}

/*お知らせ 濃いめの緑*/
.genre_01{
	background: url("../img/parts_bg_2.jpg") no-repeat center center;
	background-size: 320px 320px;
}

/*ブログ　薄めの緑*/
.genre_02{
	background: url("../img/parts_bg_1.jpg") no-repeat center center;
	background-size: 320px 320px;
}

/*イベント　水色*/
.genre_03{
	background: url("../img/parts_bg_3.jpg") no-repeat center center;
	background-size: 320px 320px;
}

/*募集　紫*/
.genre_04{
	background: url("../img/parts_bg_4.jpg") no-repeat center center;
	background-size: 320px 320px;
}

/*重要　赤*/
.genre_05{
	background: url("../img/parts_bg_5.jpg") no-repeat center center;
	background-size: 320px 320px;
}

/*レポート　オレンジ*/
.genre_06{
	background: url("../img/parts_bg_6.jpg") no-repeat center center;
	background-size: 320px 320px;
}

/*予備*/
.genre_07{}

/*予備*/
.genre_08{}

/*予備*/
.genre_09{}

/*予備*/
.genre_10{}

.frontpage_topics .link_box{
	display: inline-block;
	position: absolute;
	top:-106px;
	right: 0px;
	
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.frontpage_topics_list li a{
}

.frontpage_topics_list li a:hover{
	text-decoration: underline;
}




/*--------------- トップページの「主な心理療法活動」 ---------------*/

.frontpage_counseling{
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 120px 90px 50px 90px;
	background: url("../img/bg_green.jpg") center top;
	background-size: 800px 358px;
}

.frontpage_counseling:after{
	content:"";
	display: block;
	position: absolute;
	top:0;
	left: 0;
	right: 0;
	aspect-ratio: 1600 / 70;/*縦横比固定*/
	background: url("../img/bg_wave_top_white.svg") no-repeat center top;
	background-size: contain;
}

.frontpage_counseling .section_inner{
	display: block;
	position: relative;
	margin: 0 auto;
	max-width: 1320px;
}

.frontpage_counseling .title_box{
	margin-bottom: 90px;
}

.frontpage_counseling .section_title{
}

.frontpage_counseling_content_box{
}

.frontpage_counseling_content_3column{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
	max-width: 1230px;
	padding-left: 15px;
	padding-right: 15px;
	margin: 0 auto;
	letter-spacing: -.40em;
}

.frontpage_counseling_content_3column .column_inner{
	display: inline-block;
	position: relative;
	letter-spacing: normal;
	width: 31%;
	margin-right: 3.5%;
	margin-bottom: 5%;
	background-color: #ffffff;
	
	border-radius: 4vw;
	-webkit-border-radius: 4vw;
	-moz-border-radius: 4vw;
}

.frontpage_counseling_content_3column .column_inner:nth-of-type(3){
	margin-right: 0%;
}

.frontpage_counseling_3column_1box_title{
	display: flex;
	flex-direction: column; /* 子要素をflexboxにより縦並びに揃える */
	justify-content: center; /* 子要素をflexboxにより左右中央に配置する */
	align-items: center;  /* 子要素をflexboxにより上下中央に配置する*/
	position: absolute;
	background-color: #ffffff;
	top: -45px;
	left: -15px;
	padding: 12px 3vw 12px 3vw;
	font-size: 2.4rem;
	font-weight: 600;
	text-align: center;
	line-height: 110%;
	min-height: 80px;
	vertical-align: middle;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	z-index: 1;
}

.frontpage_counseling_3column_1box_title span{
	font-size: 1.8rem;
}

.frontpage_counseling_3column_1box_img{
	overflow: hidden;
	border-radius: 4vw;
	-webkit-border-radius: 4vw;
	-moz-border-radius: 4vw;
}

.frontpage_counseling_3column_1box_img img{
	position: relative;
	object-fit: cover;
	height: 100%;
	width: 100%;
	vertical-align: middle;
	text-align: center;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.frontpage_counseling_3column_1box_img a:hover img{
	transform:scale(1.02,1.02);
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.frontpage_counseling_3column_1box_text{
	display: block;
	position: relative;
	padding: 30px 30px 90px 30px;
}

.frontpage_counseling_3column_1box_link{
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	text-align: right;
	padding: 0px 30px 40px 30px;
}


/*--------------- トップページの「企業・各種団体様へのご案内」 ---------------*/

.frontpage_groups{
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 120px 90px 100px 90px;
	background: 
		url("../img/bg_object_4.jpg") no-repeat,
		url("../img/bg_object_5.jpg") no-repeat,
		url("../img/bg_object_6.jpg") no-repeat;
	background-size: 
		205px auto,/*16% auto,*/
		275px auto,/*15% auto,*/
		440px auto;/*30% auto;*/
	background-position: 
		0px 40px,
		right 0% top 29%,
		left bottom;
}

.frontpage_groups .section_inner{
	display: block;
	position: relative;
	margin: 0 auto;
	max-width: 1320px;
}

.frontpage_groups .title_box{
}

.frontpage_groups .section_title{
	
}

.frontpage_groups_content_box{
}

.frontpage_groups_introduction_box{
	display: block;
	position: relative;
	max-width: 1230px;
	padding-left: 15px;
	padding-right: 15px;
	margin: 0 auto;
	text-align: center;
	margin-bottom: 60px;
}

.frontpage_groups_introduction_text{
	display: inline-block;
	position: relative;
	text-align: left;
	font-weight: 600;
	font-size: 1.9rem;
	max-width: 860px;
}


.frontpage_groups_content_3column{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
	max-width: 1230px;
	padding-left: 15px;
	padding-right: 15px;
	margin: 0 auto;
	letter-spacing: -.40em;
}

.frontpage_groups_content_3column .column_inner{
	display: flex; /* 子要素をflexboxで揃える */
	flex-direction: column; /* 子要素をflexboxにより縦並びに揃える */
	align-items: center;  /* 子要素をflexboxにより左右中央に配置する*/
	position: relative;
	letter-spacing: normal;
	width: 31%;
	margin-right: 3.5%;
	margin-bottom: 5%;
	padding: 25px 15px 25px 15px;
	border: solid 1px #00b900;
	overflow: hidden;
	border-radius: 4vw;
	-webkit-border-radius: 4vw;
	-moz-border-radius: 4vw;
}

.frontpage_groups_content_3column .column_inner:nth-of-type(3){
	margin-right: 0%;
}

.frontpage_groups_3column_1box_title{
	font-size: 2.6rem;
	font-weight: 600;
	color: #00b900;
	margin-bottom: 10px;
}

.frontpage_groups_3column_1box_img{
	text-align: center;
}

.frontpage_groups_3column_1box_img img{
	max-width: 250px;
}

.button_green_big{
	
}



/*--------------------------------

iOSでの「100vh」が正確じゃない問題の解決

--------------------------------*/

/* Safari用のハックは、Chromeに適用されないようにする */

@supports (-webkit-touch-callout: none) {
	.drawermenu_box,
	.mainvisual_area,
	#mainvisual_box,
	.mainvisual,
	.mainvisual_catchcopy_box{
	/* Safari用のハック */
	/*height: -webkit-fill-available;*/
  }
}


/*--------------------------------

トップページ以外のページの共通パーツ

--------------------------------*/

.contents_main{
	display: block;
	position: relative;
	padding-left: 110px;
	padding-right: 90px;
}

.contents_main:before {
		content: "";
		display: block;
		position: absolute;
		top: -2%;
		right: -10%;
		width: 53%;
		aspect-ratio: 1600 / 1160;
		background: url(../img/bg_object_3.jpg) no-repeat right top;
		background-size: contain;
}

/*1700px以上*/
@media (min-width: 1700px) {
	.contents_main:before {
		width: 893px;
	}
}

.page_title_box{
	display: block;
	position: relative;
	padding-top: 7vw;
	padding-bottom: 6vw;
	padding-left: 120px;
	padding-right: 90px;
	margin-left: -110px;
	margin-right: -90px;
	margin-bottom: 80px;
	background-image: linear-gradient(90deg, #f7f6f3, #f7f6f3 16%, transparent);
	
	font-weight: 600;
	line-height: 120%;
}

/*1380px以上*/
@media (min-width: 1380px) {
	.page_title_box{
		padding-top: 95px;
		padding-bottom: 85px;
	}
}

.page_title_e{
	display: block;
	position: relative;
	font-family: "Sen", sans-serif;
	font-size: 2.1rem;
	max-width: 1480px;
	font-weight: 400;
	color: #52b532;
	margin: 0 auto;
	margin-bottom: 2rem
}

/*h1*/
.page_title{
	display: block;
	position: relative;
	font-family: "dnp-shuei-mgothic-std", sans-serif;
	font-size: 4.4rem;
	max-width: 1480px;
	line-height: 100%;
	margin: 0 auto;
	
}

.page_title span{
	display: inline-block;
	position: relative;
	border-bottom: dotted 2px #52b532;
	padding-bottom: 2rem;
}

.page_subtitle{
	padding-top: 25px;
	font-family: "dnp-shuei-mgothic-std", sans-serif;
	font-size: 2.8rem;
}


.contents_main_inner{
	display: block;
	position: relative;
	margin: 0 auto;
}

.section_box{
	padding-bottom: 50px;
}

.contents_box{
	max-width: 1340px;
	margin: 0 auto;
}

.contents_section_title_e{
	font-family: "Sen", sans-serif;
	font-size: 2.1rem;
	color: #00b900;
}

.contents_section_title{
	font-size: 3.2rem;
	font-weight: 600;
	margin-bottom: 40px;
}

/*h3*/
.title_bg_green{
	display: block;
	position: relative;
	text-align: left;
	font-size: 2.2rem;
	line-height: 130%;
	font-weight: 600;
	color: #ffffff !important;
	background: url(../img/parts_bg_1.jpg) center center;
	background-size: 320px 320px;
	padding: 14px 25px 14px 25px;
	margin-bottom: 30px;
	text-decoration: none;
	pointer-events: visible;
	overflow: hidden;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
}

.padding_lr25{
	padding-left: 25px;
	padding-right: 25px;
}

.top_dotline_green{
	display: inline-block;
	position: relative;
	font-size: 3.0rem;
	font-weight: 600;
	margin-bottom: 40px;
}

.top_dotline_green:before{
	content:"";
	display: inline-block;
	position: relative;
	padding-top: 14px;
	width: 100%;
	background-image: radial-gradient(circle, #00b900 2.5px, transparent 2.5px);
	background-position: left -3px top;
	background-repeat: repeat-x;
	background-size: 11px 5px;
}

.bottom_dotline_white{
	display: inline-block;
	position: relative;
	margin-bottom: 3px;
	padding-bottom: 13px;
	padding-left: 2rem;
	padding-right: 2rem;
}

.bottom_dotline_white:after{
	content: "";
	display: inline-block;
	position: absolute;
	padding-top: 10px;
	width: 100%;
	left: 0;
	bottom: 0px;
	background-image: radial-gradient(circle, #ffffff 2.5px, transparent 2.5px);
	background-repeat: repeat-x;
	background-size: 11px 5px;
}

.bg_green{
	background: url("../img/parts_bg_1.jpg") center center;
	background-size: 320px 320px;
}

.bg_green.padding2vw{
	padding: 2vw;
}


/*--------------------------------

「個人面接」ページ　ディレクトリ：private/

--------------------------------*/

/*「section_box」と併記*/
.private_introduction{
	padding-bottom: 70px;
}

.private_introduction .text_box_2column{
	margin: 0 auto;
	max-width: 1280px;
}

.private_introduction .text_box_2column .column_inner{
	overflow: visible !important;
}

.private_introduction .text_box_2column .column_inner:nth-of-type(1){
	margin-right: 1%;
}

.private_catchcopy{
	font-size: 3rem;
	color: #52b532;
	line-height: 200%;
	letter-spacing: 2px;
	margin-bottom: 40px;
}

.private_text{
	font-size: 1.75rem;
	letter-spacing: 3px;
	font-weight: 600;
	line-height: 220%;
}

/*img*/
.private_introduction_img{
	margin-top: 5%;
	margin-left: 0px;
	text-align: left;
	max-width: 440px;
	min-width: 400px;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

/*画面幅1280x未満*/
@media (max-width: 1280px) {
	.private_catchcopy,
	.private_text{
		letter-spacing: 1px;
		line-height: 180%;
	}
	.private_catchcopy br{
		display: none;
	}
}

/*画面幅890x未満*/
@media (max-width: 890px) {
	.private_catchcopy{
		font-size: 2.6rem;
	}
	.private_text{
		font-size: 1.6rem;
	}
	.private_text br{
		display: none;
	}
	.private_introduction_img{
		max-width: 100%;
		min-width: 300px;
	}
}

.private_contents{
	display: block;
	position: relative;
	margin: 0 auto;
	margin-left: -110px;
	margin-right: -90px;
	padding: 160px 90px 50px 110px;
	background: url("../img/bg_litegreen.jpg") center top;
	background-size: 800px 358px;
}

.private_contents:after{
	content:"";
	display: block;
	position: absolute;
	top:0;
	left: 0;
	right: 0;
	aspect-ratio: 1600 / 70;/*縦横比固定*/
	background: url("../img/bg_wave_top_white.svg") no-repeat center top;
	background-size: 100% auto;
}

/*導入部分から下（背景がうすいグリーン）の欄*/
.private_contents{
	
}

/*table*/
.private_fee_table{
	background-color: #ffffff;
	border-top: 0px;
	overflow: hidden;
}

.private_fee_table tr{
}

.private_fee_table tr:first-of-type{
	background: url(../img/table_th_litegreen.jpg) center center;
	background-size: 320px 320px;
}


.private_fee_table tr:last-of-type{
	border-bottom: 0px;
}

.private_fee_table tr th{
	padding-top: 15px;
	padding-bottom: 15px;
}

.private_fee_table tr th,
.private_fee_table tr td{
	padding-left: 6vw;
	padding-right: 6vw;
	font-weight: 600;
	font-size: 2rem;
}

.private_fee_table tr:last-of-type td{
	border-bottom: 0px;
}





/*--------------------------------

「傾聴講座」ページ　ディレクトリ：listening/

--------------------------------*/

.listening_introduction{
	
}

.listening_introduction .text_box_2column{
	margin: 0 auto;
	max-width: 1280px;
}

.listening_introduction .text_box_2column .column_inner{
	overflow: visible !important;
}

.listening_introduction .text_box_2column .column_inner:nth-of-type(1){
	margin-right: 1%;
}

.listening_catchcopy{
	font-size: 3rem;
	color: #52b532;
	line-height: 200%;
	letter-spacing: 2px;
	margin-bottom: 40px;
}

.listening_text{
	font-size: 1.75rem;
	letter-spacing: 3px;
	font-weight: 600;
	line-height: 220%;
}

/*img*/
.listening_introduction_img{
	margin-top: 40px;
	margin-left: 0px;
	text-align: left;
	max-width: 540px;
	min-width: 490px;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

/*画面幅1180x未満*/
@media (max-width: 1180px) {
	.listening_introduction_img{
		margin-left: 0px;
	}
}

.listening_contents{
	display: block;
	position: relative;
	margin: 0 auto;
	margin-left: -110px;
	margin-right: -90px;
	padding: 160px 90px 50px 110px;
	background: url("../img/bg_litegreen.jpg") center top;
	background-size: 800px 358px;
}

.listening_contents:after{
	content:"";
	display: block;
	position: absolute;
	top:0;
	left: 0;
	right: 0;
	aspect-ratio: 1600 / 70;/*縦横比固定*/
	background: url("../img/bg_wave_top_white.svg") no-repeat center top;
	background-size: 100% auto;
}

/*導入部分から下（背景がうすいグリーン）の欄*/
.listening_contents{
	
}

.listening_syllabus_table{
	
}

.listening_syllabus_table th{
	background-color: #f6f7c0;
	font-weight: 600;
	line-height: 140%;
	white-space: nowrap;
}

.listening_syllabus_table th,
.listening_syllabus_table td {
	border-right: #dadada solid 1px;
}

.listening_syllabus_table td:last-of-type {
	border-right: #dadada solid 0px;
}

.listening_syllabus_table .green{
	background-color: #ecfbe5;
}

/*--------------------------------

「コモンルーム《ひだまり》」ページ　ディレクトリ：common_room/

--------------------------------*/

.common_room_introduction{
	
}

.common_room_introduction .text_box_2column{
	margin: 0 auto;
	max-width: 1280px;
}

.common_room_introduction .text_box_2column .column_inner{
	overflow: visible !important;
}

.common_room_introduction .text_box_2column .column_inner:nth-of-type(1){
	margin-right: 8%;
}

.common_room_introduction .text_box_2column.column_6_4 .column_inner:nth-child(1n){
	width: 54%;
}

.common_room_introduction .text_box_2column.column_6_4 .column_inner:nth-child(2n){
	width: 36%;
}

.common_room_catchcopy{
	font-size: 3rem;
	color: #52b532;
	line-height: 200%;
	letter-spacing: 2px;
	margin-bottom: 40px;
}

.common_room_text{
	font-size: 1.75rem;
	letter-spacing: 3px;
	font-weight: 600;
	line-height: 220%;
}

/*img*/
.common_room_introduction_img{
	margin-top: -80px;
	margin-left: 0px;
	text-align: left;
	max-width: 540px;
	min-width: 490px;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

/*画面幅1180x未満*/
@media (max-width: 1180px) {
	.common_room_introduction_img{
		margin-top: -40px;
		margin-left: 0px;
	}
}

.common_room_contents{
	display: block;
	position: relative;
	margin: 0 auto;
	margin-left: -110px;
	margin-right: -90px;
	padding: 160px 90px 50px 110px;
	background: url("../img/bg_litegreen.jpg") center top;
	background-size: 800px 358px;
}

.common_room_contents:after{
	content:"";
	display: block;
	position: absolute;
	top:0;
	left: 0;
	right: 0;
	aspect-ratio: 1600 / 70;/*縦横比固定*/
	background: url("../img/bg_wave_top_white.svg") no-repeat center top;
	background-size: 100% auto;
}

/*導入部分から下（背景がうすいグリーン）の欄*/
.common_room_contents{
	
}

/*img*/
.common_room_illust{
	max-width: 300px;
}



/*--------------------------------

「企業・各種団体様へのご案内」ページ　ディレクトリ：groups/

--------------------------------*/

.groups_introduction{
	
}

.groups_introduction .text_box_2column{
	margin: 0 auto;
	max-width: 1280px;
}

.groups_introduction .text_box_2column .column_inner{
	overflow: visible !important;
}

.groups_introduction .text_box_2column .column_inner:nth-of-type(1){
	margin-right: 1%;
}

.groups_catchcopy{
	font-size: 3rem;
	color: #52b532;
	line-height: 200%;
	letter-spacing: 2px;
	margin-bottom: 40px;
}

.groups_text{
	font-size: 1.75rem;
	letter-spacing: 3px;
	font-weight: 600;
	line-height: 220%;
}

/*img*/
.groups_introduction_img{
	margin-left: 0px;
	text-align: left;
	max-width: 420px;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

/*画面幅880x未満*/
@media (max-width: 880px) {
	.groups_catchcopy br{
		display: none;
	}
}

.groups_contents{
	display: block;
	position: relative;
	margin: 0 auto;
	margin-left: -110px;
	margin-right: -90px;
	padding: 160px 90px 50px 110px;
	background: url("../img/bg_litegreen.jpg") center top;
	background-size: 800px 358px;
}

.groups_contents:after{
	content:"";
	display: block;
	position: absolute;
	top:0;
	left: 0;
	right: 0;
	aspect-ratio: 1600 / 70;/*縦横比固定*/
	background: url("../img/bg_wave_top_white.svg") no-repeat center top;
	background-size: 100% auto;
}

/*導入部分から下（背景がうすいグリーン）の欄*/
.groups_contents{
	
}

.group_service_text_box{
}

.groups_service_title{
	display: inline-block;
	position: relative;
	font-size: 3.0rem;
	font-weight: 600;
	margin-bottom: 40px;
}

.groups_service_title:before {
	content: "";
	display: block;
	position: relative;
	/* top: -75px; */
	margin-bottom: 20px;
	width: 130px;
	text-align: center;
	color: #00b900;
	font-size: 4.0rem;
	font-family: "dnp-shuei-mgothic-std", sans-serif;
	font-weight: 500;
	padding-bottom: 15px;
	background-image: radial-gradient(circle, #00b900 2.5px, transparent 2.5px);
	background-position: left -3px bottom;
	background-repeat: repeat-x;
	background-size: 11px 5px;
}

.groups_service1 .groups_service_title:before{
	content:"1";
}

.groups_service2 .groups_service_title:before{
	content:"2";
}

.groups_service3 .groups_service_title:before{
	content:"3";
}


.groups_img{
	
}

.groups_img img{
	max-width: 370px;
}

/*--------------------------------

「当センターについて」ページ　ディレクトリ：about/

--------------------------------*/

.about_introduction{
	
}

.about_introduction .text_box_2column{
	margin: 0 auto;
	max-width: 1280px;
}

.about_introduction .text_box_2column .column_inner{
	overflow: visible !important;
}

.about_introduction .text_box_2column .column_inner:nth-of-type(1){
	margin-right: 1%;
}



.about_catchcopy{
	font-size: 2rem;
	color: #52b532;
	line-height: 200%;
	letter-spacing: 2px;
}

/*img*/
.about_introduction_img{
	margin-top: -80px;
	margin-left: 0px;
	text-align: left;
	max-width: 540px;
	min-width: 490px;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

/*画面幅1180x未満*/
@media (max-width: 1180px) {
	.about_introduction_img{
		margin-top: -40px;
		margin-left: 0px;
	}
}

.about_contents{
	display: block;
	position: relative;
	margin: 0 auto;
	margin-left: -110px;
	margin-right: -90px;
	padding: 160px 90px 50px 110px;
	background: url("../img/bg_litegreen.jpg") center top;
	background-size: 800px 358px;
}

.about_contents:after{
	content:"";
	display: block;
	position: absolute;
	top:0;
	left: 0;
	right: 0;
	aspect-ratio: 1600 / 70;/*縦横比固定*/
	background: url("../img/bg_wave_top_white.svg") no-repeat center top;
	background-size: 100% auto;
}

/*導入部分から下（背景がうすいグリーン）の欄*/
.about_contents{
	
}

.about_contents table tr td:first-of-type{
	font-weight: 600;
	color: #00b900;
}


/*各サービス（各事業）のダウンロードファイル欄　ul*/
.about_link_list {
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
	position: relative;
}

.about_link_list li {
	display: inline-block;
	position: relative;
	vertical-align: top;
	letter-spacing: normal;
	width: 49%;
	margin-right: 2%;
	margin-bottom: 2%;
}

.about_link_list li:nth-of-type(2n) {
	margin-right: 0%;
}

.about_link_list li a {
	display: flex;
	position: relative;
	align-items: center;  /* 子要素をflexboxにより上下中央に配置する*/
	height: 100%;
	min-height: 80px;
	padding: 4% 16% 4% 5%;
	background-color: #fff;
	border: solid 1px #ccc;
	line-height: 140%;
	font-weight: 600;
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-ms-border-radius: 8px;
	-moz-border-radius: 8px;
	-o-border-radius: 8px;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.about_link_list li a span {
	font-size: 1.2rem;
	color: #777;
	margin-top: 4px;
}

.about_link_list li a.pdf:after,
.about_link_list li a.word:after,
.about_link_list li a.excel:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 4%;
	bottom: 4%;
	right: 4%;
	width: 10%;
	max-width: 48px;
}

.about_link_list li a.pdf:after {
	background: url("../img/icon_48_pdf.svg") no-repeat center center;
	background-size: contain;
}

.about_link_list li a.word:after {
	background: url("../img/icon_48_word.svg") no-repeat center center;
	background-size: contain;
}

.about_link_list li a.excel:after {
	background: url("../img/icon_48_excel.svg") no-repeat center center;
	background-size: contain;
}

.about_link_list li a:hover {
	background-color: rgba(0, 185, 0, 0.1);
}

.about_link_list li a.pdf:hover:after,
.about_link_list li a.word:hover:after,
.about_link_list li a.excel:hover:after {
	top: calc(4% - 5px);
}

.about_link_list a.icon_link_aftermark{
	color: #000000;
}

.about_link_list a.icon_link_aftermark:before,
.about_link_list a.icon_link_aftermark:after{
	top:auto !important;
	right: 20px;
}


/*--------------------------------

「TOPICS」ページ　ディレクトリ：topics/

--------------------------------*/

.category_topics .contents_box{
	max-width: 980px;
	margin: 0 auto;
}

.topics_list_box {
	display: block;
	position: relative;
	margin: 0 auto;
	max-width: 980px;
}

.topics_list {
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	letter-spacing: -.40em;
}

.topics_list li {
	display: inline-block;
	position: relative;
	letter-spacing: normal;
	vertical-align: top;
	width: 100%;
	border-bottom: solid 1px #cdcdcd;
	padding-top: 2.2rem;
	padding-bottom: 1.6rem;
}

.topics_list li:first-of-type {
	border-top: solid 1px #cdcdcd;
}

.topics_list .title {
	display: block;
	position: relative;
	padding-left: 250px;
	padding-bottom: 5px;
	font-size: 1.65rem;
	font-weight: 600;
	color: #666666;
	vertical-align: middle;
	line-height: 160%;
	margin-top: -3.5rem;
}

.topics_list .date {
	display: inline-block;
	position: relative;
	font-family: "Sen", sans-serif;
	font-weight: 500;
	font-size: 1.5rem;
	color: #6b6a6a;
	margin-right: 10px;
	margin-bottom: 15px;
	vertical-align: middle;
	line-height: 100%;
	min-width: 90px;
}

.topics_list .genre {
	font-size: 1.2rem;
}

.topics .link_box{
	display: inline-block;
	position: absolute;
	top:-106px;
	right: 0px;
	
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.topics_list li a{
}

.topics_list li a:hover{
	text-decoration: underline;
}

/*ページネーション（ソースはネット共通のもの）*/
/*
Plugin Name: WP-Digg Style Paginator
Plugin URI: http://www.mis-algoritmos.com/2007/09/09/wp-digg-style-pagination-plugin-v-10/
Author: Victor De la Rocha
Author URI: http://www.mis-algoritmos.com
*/
/*Quotes style*/
.wp-pagenavi,
.pagination {
	padding: 3px;
	padding-bottom: 100px;
	margin: 30px 3px 30px 3px;
	text-align: center;
}

.wp-pagenavi a,
.wp-pagenavi span,
.pagination a {
	padding: 10px;
	margin-right: 2px;
	border: 1px solid #ddd;
	text-decoration: none;
	color: #777;
	background-color: #ffffff;

	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}

.wp-pagenavi a:hover,
.wp-pagenavi a:active,
.pagination a:hover,
.pagination a:active {
	padding: 10px;
	margin-right: 2px;
	border: 1px solid #e0e0e0;
	background-color: #7bc478;
	color: #FFF;
}

.wp-pagenavi span.current,
.pagination span.current {
	padding: 10px;
	margin-right: 2px;
	border: 1px solid #e0e0e0;
	font-weight: bold;
	background-color: #52b532;
	color: #ffffff;
}

.wp-pagenavi span.disabled,
.pagination span.disabled {
	padding: 10px;
	margin-right: 2px;
	border: 1px solid #f3f3f3;
	color: #777;
}



/*記事ページ*/

.topics_page_title_box{
	display: block;
	position: relative;
	padding-bottom: 20px;
	margin-bottom: 40px;
	border-bottom: solid 1px #acacac;
}

.topics_page_title_box .date {
	display: inline-block;
	position: relative;
	font-family: "Sen", sans-serif;
	font-weight: 500;
	font-size: 1.5rem;
	color: #6b6a6a;
	margin-right: 6px;
	margin-bottom: 5px;
	vertical-align: middle;
	line-height: 100%;
}

.topics_page_title_box .title {
	font-size: 2.8rem;
	font-weight: 600;
	color: #3e3a39;
	vertical-align: middle;
	line-height: 160%;
	padding-bottom: 0px;
	margin-bottom: 15px;
}

.topics_page_title_box .genre {
	font-size: 1.20rem;
}

.topics_page_content_box{
	padding-bottom: 40px;
	margin-bottom: 40px;
	border-bottom: solid 1px #acacac;
}

.topics_page_content_box p,
.topics_page_content_box ul,
.topics_page_content_box ol {
	font-size: 1.7rem;
	margin-bottom: 2rem;
	line-height: 180%;
}

.topics_page_content_box a{
	text-decoration: underline;
	color: #52b532;
}
	

/*記事ページの下部ダウンロードファイルリンク欄*/
.topics_page_download_box {
	padding-bottom: 40px;
	margin-bottom: 40px;
	border-bottom: solid 1px #acacac;
}

.topics_page_download {}

.topics_page_download span {
	display: inline-block;
	position: relative;
	text-align: center;/*vertical-align: text-top ;*/
	padding: 4px 4px 4px 4px;
	top: -2px;
	line-height: 100% !important;
	background-color: #ffac56;
	letter-spacing: 0.05rem;
	letter-spacing: 0.05rem;
	text-indent: 0.05rem;
	min-width: 8rem;
	margin-right: 10px;
	font-size: 1.3rem;
	color: #FFFFFF;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
}

.topics_page_download a {
	font-size: 1.75rem;
	font-weight: 600;
	text-decoration: underline;
}

.topics_page_download a:hover {
	color: #52b532;
}

/*記事ページの下部お知らせ一覧リンク欄*/
.topics_page_link_box {}

.topics_page_link {
	text-align: center;
	padding-bottom: 100px;
}

.topics_page_link a {
	display: inline-block;
	position: relative;
	text-align: center;
	font-size: 1.5rem;
	line-height: 130%;
	font-weight: normal;
	color: #333333 !important;
	background-color: #ffffff !important;
	border: solid 0px #ffffff !important;
	padding: 14px 2vw 14px 2vw;
	min-width: 200px;
	text-decoration: none;
	margin-top: 6px;
	margin-bottom: 6px;
	box-shadow: 0 0px 3px 2px rgba(0, 0, 0, 0.2);
	z-index: 1;
		
		overflow: hidden;
		transition: .3s;
		border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
}

.topics_page_link a:hover {
	color: #ffffff !important;
	text-decoration: none;
	border: solid 0px #afafaf !important;
	background-color: #00b900 !important;
}



/*--------------------------------

「お問い合わせ」ページ　ディレクトリ：contact/

--------------------------------*/

.category_contact .contents_box{
	max-width: 840px;
}

/*フォームのtableを囲んだdiv*/
.form_table_box{
	width: 100%;
	
	margin: 0 auto;
	margin-bottom: 40px;
}

/*フォームのtable*/
.form_table_box table{
	border-top: #c5bebe solid 0px;
	border-left: #c5bebe solid 0px;
	width: 100%;
}

.form_table_box table tr {
	border-bottom: #c5bebe solid 0px;
	border-right: #c5bebe solid 0px;
	font-size: 100%;
}

.form_table_box table th {
	padding: 15px 4vw 15px 0px;
	border-bottom: #c5bebe solid 0px;
	border-right: #c5bebe solid 0px;
	font-size: 100%;
	background-color: #ffffff;
	width: 38%;
}

.form_table_box table td {
	padding: 15px 0px 15px 0px;
	border-bottom: #c5bebe solid 0px;
	border-right: #c5bebe solid 0px;
	font-size: 100%;
}

/*確認ページのテーブルのみ*/
.form_table_box.check_table table tr {
	border-bottom: #c5bebe dotted 1px;
}

.form_table_box.check_table table th {
	padding-right:5%;
	width: 45%;
}

.form_table_box.check_table table td {
	font-size: 110%;
}


/* テキストボックス本体 */
.form_table_box table td input[type="text"],
.form_table_box table td input[type="email"] {
	width: 100%;
	padding: 12px 12px 12px 12px !important;
	font-size: 18px;
	border: #c5bebe solid 1px;
	
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
}


.form_table_box table td span.age input[type="text"]{
	width: 4em;
}

.form_table_box table td span.zip-code input[type="text"],
.form_table_box table td span.area input[type="text"],
.form_table_box table td span.shop_name input[type="text"]{
	width: 12em;
}



/*テキストエリア*/
.form_table_box table td textarea{
	width: 100%;
	padding: 12px 12px 12px 12px;
	font-size: 16px;
	border:solid 1px #c5bebe;
	
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
}



/*プルダウン欄　div*/
.form_table_box select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	border: 0;
	margin: 0;
	padding: 0;
	background: none transparent;
	vertical-align: middle;
	font-size: inherit;
	color: inherit;
	box-sizing: content-box;
	cursor: pointer;
	width: auto;
	padding: 12px 12px 12px 12px;
	background: #efefef;
	color: #555555;
	font-size: 14px;
	line-height: 1;
	transition: .2s;
	border: #d8d8d8 solid 1px;
	border-radius: 8px 8px 8px 8px;
	
	font-size: 18px;
	border: #d8d8d8 solid 1px;
	border-radius:		8px;
}



/*チェックボックスにstyleをつけるために、チェックボックスと確認ボタンをくくったdivに付加*/
.chkbox_box,
.radio_box {
	margin:0px 0px 0px 0px;
	padding: 8px 0px 0px 0px;
}

/* ラベルのスタイル　*/
.chkbox_box label,
.radio_box label {
	padding-left:		34px;
	font-size:		18px;
	line-height:		18px;
	display:		inline-block;
	cursor:			pointer;
	position:		relative;
	margin-right: 1.5rem;
	margin-bottom: 1.4rem;
}

/* チェックボックスのスタイル */
.chkbox_box label:before {
	content:		'';
	width:			20px;			/* ボックスの横幅 */
	height:			20px;			/* ボックスの縦幅 */
	display:		inline-block;
	position:		absolute;
	top:-2px;
	left:			0;
	background-color:	#fff;
	/*box-shadow:		inset 1px 2px 3px 0px #000;*/
	border: 2px solid #dcdcdc;
	border-radius:		3px;
}

/* ラジオボタンのスタイル */
.radio_box label:before {
	content:		'';
	width:			20px;			/* ボックスの横幅 */
	height:			20px;			/* ボックスの縦幅 */
	display:		inline-block;
	position:		absolute;
	top:-2px;
	left:			0;
	background-color:	#fff;
	/*box-shadow:		inset 1px 2px 3px 0px #000;*/
	border: 2px solid #dcdcdc;
	border-radius:		24px;
}

/* 元のチェックボックスを表示しない */
.chkbox_box input[type=checkbox],
.radio_box input[type=radio] {
	display:		none;
}

/* チェックした時のスタイル */
.chkbox_box input[type=checkbox]:checked + label:before{
	content:		'';		/* チェックの文字 */ 
	font-size:		16px;			/* チェックのサイズ */
	color:			#fff;			/* チェックの色 */
	background-color:	#52b532;			/* チェックした時の色 */
	border: 2px solid #52b532;
	-webkit-animation: form-bound .3s ease 0s 1;
	animation: form-bound .3s ease 0s 1;
	opacity: 1;
}

.chkbox_box input[type=checkbox]:checked + label:after{
	content:		'✓';
	color: #ffffff;
	position: absolute;
	top:-1px;
	left: 4px;
	font-size: 22px;
	transform: scale(1.0, 0.8);

	opacity: 1;
}


.radio_box input[type=radio]:checked + label:before {
	content:		'';		/* チェックの文字 */ 
	font-size:		16px;			/* チェックのサイズ */
	color:			#fff;			/* チェックの色 */
	background-color:	#52b532;			/* チェックした時の色 */
	border: 2px solid #52b532;
	
	-webkit-animation: form-bound .3s ease 0s 1;
	animation: form-bound .2s ease 0s 1;
	opacity: 1;
}

.radio_box input[type=radio]:checked + label:after {
	content:		'';
	width:			10px;			/* ボックスの横幅 */
	height:			10px;			/* ボックスの縦幅 */
	display:		inline-block;
	position:		absolute;
	top:1px;
	left:3px;
	/*box-shadow:		inset 1px 2px 3px 0px #000;*/
	border: 4px solid #FFFFFF;
	border-radius:		24px;
	
	-webkit-animation: form-bound .3s ease 0s 1;
	animation: form-bound .2s ease 0s 1;
	opacity: 1;
}

.chkbox_box label:before,
.chkbox_box input[type=checkbox]:checked + label:after {
	border-radius:		3px !important;
}

@-webkit-keyframes form-bound {
	0% {
		-webkit-transform: scale(1);
		transform:scale(1)
	}

	25% {
		-webkit-transform: scale(1.15);
		transform:scale(1.15)
	}

	75% {
		-webkit-transform: scale(0.95);
		transform:scale(0.95)
	}

	100% {
		-webkit-transform: scale(1);
		transform:scale(1)
	}
}

@keyframes form-bound {
	0% {
		-webkit-transform: scale(1);
		transform:scale(1)
	}

	25% {
		-webkit-transform: scale(1.15);
		transform:scale(1.15)
	}

	75% {
		-webkit-transform: scale(0.95);
		transform:scale(0.95)
	}

	100% {
		-webkit-transform: scale(1);
		transform:scale(1)
	}
}


.contact_select_optionbox{
	display: block;
	position: relative;
	padding-left: 34px;
}

.contact_select_optionbox.select1{
	
}

.contact_select_optionbox.select2{
	
}



input.inline{
	display: inline-block;
	width: auto !important;
}



/*記入例　span*/
.form_table_box .ex_text{
	display: inline-block;
	margin-top: 4px;
	padding: 4px 4px 4px 4px;
	font-size: 90%;
	color: #666;
}

/*必須　span*/
.form_table_box .required{
	font-size: 86%;
	color:#ff3333;
}


.item_subtitle{
	display: inline-block;
	text-align: center;
	vertical-align: text-top ;
	padding: 4px 4px 4px 4px;
	margin-top: 0px;
	line-height: 100% !important;
	background-color: #52b532;
	letter-spacing: 0.05rem;
	min-width: 70px;
	margin-right: 10px;
	font-size: 1.1rem;
	color: #FFFFFF;
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
}


/*未記入の入力欄 span*/
.form_table_box th span.errwrap {
	/*
	color: #ff3333;
	font-weight: 600;
	*/
}

/*未記入の項目名 span*/
.form_table_box td span.errwrap{
	/*
	display: inline-block;
	overflow: hidden;
	padding: 0;
	border: 5px solid #ffcccc;
	background: #ffcccc;
	width: 100%;
	*/
}

.form_table_box td span.errwrap:after{
	content:"";
	display: block;
	position: relative;
	width: 100%;
	height: 0px;
	clear: both;
	float: none;
}


/*確認、戻る、送信ボタン等を格納したdiv*/
.form_submit_btn_box{
	text-align: center;
	margin-top: 30px;
	margin-bottom: 30px;
}

/*確認と送信ボタン（ブルー）*/
.button_to_check,
.button_send{
	display: inline-block;
	padding: 10px 2.5vw 10px 2.5vw;
	min-width: 160px;
	font-size: 17px;
	margin-left: 0.5vw;
	margin-right: 0.5vw;
	border: solid 1px #52b532 !important;
	background-color: #52b532;
	color: #FFF;
	text-decoration: none;
	
	font-weight: normal !important;
	
	cursor: pointer;
	
	border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
	
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}


.button_to_check:hover,
.button_send:hover,
.button_to_check:active,
.button_send:active{
	display: inline-block;

	border: solid 1px #4aa32d !important;
	background-color: #4aa32d !important;
	
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}


/*同意しますにチェックが入っていない場合*/
input[type="submit"][disabled],
input[type="submit"][disabled]:hover {
	color: #ffffff;
	background: none;
	background-color: #dcdcdc;
	border: solid 1px #dfdfdf !important;
	cursor: default;
	pointer-events: none;
}



/*ボタン（グレー）*/
.button_to_back{
	display: inline-block;
	padding: 10px 2.5vw 10px 2.5vw;
	min-width: 160px;
	font-size: 17px;
	margin-left: 0.5vw;
	margin-right: 0.5vw;
	border: solid 1px #dfdfdf !important;
	background-color: #ffffff;
	color: #444444;
	text-decoration: none;
	
	font-weight: normal !important;
	
	border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
	
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.button_to_back:hover{
	display: inline-block;

	border: solid 1px #dfdfdf !important;
	background-color: #f8f8f8;
	
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}


.contact_check_text{
	text-align: center;
}

/*box_grayと併用してスクロールを追加　div*/
.scroll_box{
	width: 100%;
	/*max-width: 780px;*/
	height: 200px;
	margin: 0 auto;
	margin-bottom: 50px;
	overflow-y:scroll;
	overflow-x:hidden;

}



/*--------------------------------

「404 Not found」ページ　ディレクトリ：404

--------------------------------*/

.box_404{
	/*
	display: block;
	position: relative;
	margin: 0 auto;
	width: 50%;
	max-width: 560px;
	padding-bottom: 20%;
	background: url(../img/404.svg) no-repeat center center;
	background-size: contain;
	opacity: 0.3;
	*/
}



/*=========================iPad用スタイルここから=========================*/


@media screen and (min-width: 736px) and (max-width: 1024px) {/*元 min-width:768、max-width: 920px*/
/*iPhone Plusの横向きのwidthが736pxのため、Plusでは縦でスマホ版、横でiPad版を表示*/

	body {
		min-width:initial;
	}


	/* -------------------------------- 
	
 	レイアウト設定
 	
	-------------------------------- */
	/*大枠の構成
		#top　ページトップアンカー
		.header　ヘッダー
		.drawermenu　グランドメニュー
		.contents_all　コンテンツ
		.footer　フッター
	*/
	
	/* --------------------
	iPad
	ヘッダ
	
	ー-------------------- */
	
	.header_inner{

	}


	/*固定ヘッダーロゴ　div*/
	.btn_logo{
	}
	
	body.header_narrow_height .sub_menu_box{
		display: flex;
	}
	
	.sub_menu .tel{
		display: none;
	}
	
/* -------------------------------- 
	iPad
 	コンテンツ欄
 	
	-------------------------------- */
	
	.anker{
	}

	/*------------------------------
	iPad
	フッター
	
	------------------------------*/
	
	#footer{
		display: block;
		position: relative;
	}
	
	/**/
	.footer_inner{
		display: block;
		position: relative;
		padding: 40px 40px 40px 60px;
	}
	
	/*コピーライト*/
	.footer_copyright_box{
		display: block;
		position: relative;
		top:auto;
		left:auto;
		width: 100%;
		transform: rotate(0deg);
		z-index: 8888;
		padding-top: 20px;
		padding-right: 50px;
	}
	
	.footer_copyright_inner{
		display: block;
		position: relative;
	}
	
	.footer_copyright_inner p{
		font-size: 1.3rem;
		color: #000000;
		white-space: nowrap;
		line-height: 100%;
		text-align: right;
		font-weight: 300;
		letter-spacing: 0.15rem;
	}



	/*------------------------------各パーツ設定------------------------------*/
	
	.tablet_only {
		display:inline-block !important;
	}


	/* ---------- div内で2列にならべるdiv ---------- */
	/*2列全体　div*/
	.text_box_2column{

	}
	.text_box_2column .column_inner{
		margin-right: 4%;
	}
	.text_box_2column .column_inner:nth-child(2n){
		margin-right: 0%;
	}
	.text_box_2column.column_6_4 .column_inner:nth-child(1n){
		width: 52%;
	}
	.text_box_2column.column_6_4 .column_inner:nth-child(2n){
		width: 44%;
	}
	.text_box_2column.column_7_3 .column_inner:nth-child(1n){
		width: 72%;
	}
	.text_box_2column.column_7_3 .column_inner:nth-child(2n){
		width: 24%;
	}
	.text_box_2column .column_inner:nth-child(2n){
		margin-right: 0%;
	}
	.text_box_2column.column_4_6 .column_inner:nth-child(1n){
		width: 44%;
	}
	.text_box_2column.column_4_6 .column_inner:nth-child(2n){
		width: 52%;
	}
	.text_box_2column.column_3_7 .column_inner:nth-child(1n){
		width: 24%;
	}
	.text_box_2column.column_3_7 .column_inner:nth-child(2n){
		width: 72%;
	}


	/* ---------- div内で3列にならべるdiv ---------- */

	/* ---------- div内で4列にならべるdiv ---------- */
	
	/*--------------------------------
	iPad
	トップページ専用スタイル
	
	--------------------------------*/

	/*--------------- トップページのみのスタイル（メインビジュアル） ---------------*/
	
	/*section*/
	.mainvisual_area{
		position: relative;
		padding-top: 150px;
		padding-bottom: 50px;
		background: url("../img/bg_green.jpg") center top;
		background-size: 1600px 716px;
		z-index: 0;
	}
	
	.mainvisual_box{

	}
	
	.mainvisual_catchcopy_e_box{
		display: inline-block;
		position: absolute;
		top:0px;
		right: 0px;
		padding-top: 0px;
		padding-right: 3%;
		text-align: right;
		vertical-align: top;
	}
	


	/*--------------- トップページ構成要素の共通パーツ ---------------*/
	
	.title_box{
		display: inline-block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
		margin-bottom: 20px;
	}
	
	.section_title_e{
		display: inline-block;
		position: relative;
		font-family: "Sen", sans-serif;
		font-size: 3.8rem;
		font-weight: 400;
		line-height: 120%;
		margin-bottom: 5px;
		letter-spacing: 0rem;
		color: #00b900;
	}
	
	.section_title{
		display: block;
		position: relative;
		font-family: "Sen", sans-serif;
		font-size: 1.4rem;
		font-weight: 600;
	}
	
	.box_gray,
	.box_green,
	.box_emerald,
	.box_white,
	.box_bg_gray,
	.box_bg_blue,
	.box_bg_white{
		padding:40px 40px 40px 40px;
	}
	
	/*--------------- トップページの導入部分 ---------------*/
	
	.introduction{
		display: block;
		position: relative;
		margin: 0 auto;
		margin-bottom: 0px;
		padding: 40px 40px 60px 60px;
		z-index: 0;
	}
	
	.introduction .section_inner{
		margin-top: -50px;
		right: 0vw;
	}
	
	.introduction .section_inner .section_inner_left{
		display: flex;
		justify-content: flex-end; /*右寄せ*/
		width: 32%;
		padding-left: 25px;
	}
	
	.introduction .section_inner .section_inner_right{
		width: 68%;
		padding-left: 40px;
		padding-top: 50px;
	}

	.introduction_catchcopy{
		font-size: 1.7rem;
	}
	
	.introduction_catchcopy br{
		display: none;
	}

	
	/*--------------- トップページの「TOPICS」 ---------------*/
	
	.frontpage_topics{
		display: block;
		position: relative;
		margin: 0 auto;
		margin-bottom: 100px;
		padding: 0px 40px 0px 60px;
		background: url("../img/bg_object_2.jpg") no-repeat left 40px;
		background-size: 22% auto;
		z-index: 1;
	}
	
	/*--------------- トップページの「主な心理療法活動」 ---------------*/
	
	.frontpage_counseling{
		display: block;
		position: relative;
		margin: 0 auto;
		padding: 60px 40px 40px 60px;
		background: url("../img/bg_green.jpg") center top;
		background-size: 800px 358px;
	}
	
	.frontpage_counseling .title_box{
		margin-bottom: 50px;
	}
	
	.frontpage_counseling_content_3column{
		display:block;
		max-width: 1230px;
		padding-left: 15px;
		padding-right: 15px;
		margin: 0 auto;
		letter-spacing: normal;
	}
	
	.frontpage_counseling_content_3column .column_inner{
		display: flex;
		position: relative;
		letter-spacing: normal;
		width: 100%;
		margin-right: 0%;
		margin-bottom: 50px;
		background-color: #ffffff;
		
		border-radius: 30px;
		-webkit-border-radius: 30px;
		-moz-border-radius: 30px;
	}
	
	.frontpage_counseling_content_3column .column_inner:nth-of-type(3){
		margin-right: 0%;
	}
	
	.frontpage_counseling_3column_1box_title{
		display: inline-block;
		position: absolute;
		background-color: #ffffff;
		top: -25px;
		left: -15px;
		padding: 12px 20px 12px 20px;
		font-size: 2.2rem;
		font-weight: 600;
		text-align: center;
		line-height: 110%;
		min-height: auto;
		vertical-align: middle;
		border-radius: 14px;
		-webkit-border-radius: 14px;
		-moz-border-radius: 14px;
		z-index: 1;
	}
	
	.frontpage_counseling_3column_1box_title span{
		font-size: 1.8rem;
	}
	
	.frontpage_counseling_3column_1box_title br{
		display: none !important;
	}
	
	.frontpage_counseling_3column_1box_img{
		width: 240px;
		overflow: hidden;
		border-radius: 30px;
		-webkit-border-radius: 30px;
		-moz-border-radius: 30px;
	}
	
	.frontpage_counseling_3column_1box_text{
		width: calc(100% - 240px);
	}
	
	.frontpage_counseling_3column_1box_link{
		display: block;
		position: absolute;
		right: 0;
		bottom: 0;
		text-align: right;
		padding: 10px 30px 30px 30px;
	}
	
	/*--------------- トップページの「企業・各種団体様へのご案内」 ---------------*/
	
	.frontpage_groups{
		display: block;
		position: relative;
		margin: 0 auto;
		padding: 60px 40px 60px 60px;
		background: 
			url("../img/bg_object_4.jpg") no-repeat,
			url("../img/bg_object_5.jpg") no-repeat,
			url("../img/bg_object_6.jpg") no-repeat;
		background-size: 
			135px auto,/*16% auto,*/
			181px auto,/*15% auto,*/
			264px auto;/*30% auto;*/
		background-position: 
			0px 40px,
			right 0% top 29%,
			left bottom;
	}
	
	.frontpage_groups_introduction_box{
		margin-bottom: 40px;
	}
	
	.frontpage_groups_introduction_text{
		font-size: 1.8rem;
	}
	
	.frontpage_groups_content_3column{}
	
	.frontpage_groups_content_3column .column_inner{
		display: flex; /* 子要素をflexboxで揃える */
		flex-direction: column; /* 子要素をflexboxにより縦並びに揃える */
		align-items: center;  /* 子要素をflexboxにより左右中央に配置する*/
		position: relative;
		letter-spacing: normal;
		width: 31%;
		margin-right: 3.5%;
		margin-bottom: 5%;
		padding: 20px 15px 20px 15px;
		border: solid 1px #00b900;
		overflow: hidden;
		border-radius: 20px;
		-webkit-border-radius: 20px;
		-moz-border-radius: 20px;
	}
	
	.frontpage_groups_3column_1box_title{
		font-size: 2.0rem;
		line-height: 130%;
		font-weight: 600;
		color: #00b900;
		margin-bottom: 15px;
	}
	
	.frontpage_groups_3column_1box_img{
		text-align: center;
	}
	
	.frontpage_groups_3column_1box_img img{
		max-width: 220px;
	}
	
	.button_green_big{
		
	}
	
	/*--------------------------------
	タブレット
	トップページ以外のページの共通パーツ
	
	--------------------------------*/
	
	.contents_main{
		display: block;
		position: relative;
		padding-left: 40px;
		padding-right: 40px;
	}
	
	.contents_main:before {
			content: "";
			display: block;
			position: absolute;
			top: -1%;
			right: -10%;
			width: 53%;
			aspect-ratio: 1600 / 1160;
			background: url(../img/bg_object_3.jpg) no-repeat right top;
			background-size: contain;
	}
	
	.page_title_box{
		display: block;
		position: relative;
		padding-left: 40px;
		padding-right: 40px;
		margin-left: -40px;
		margin-right: -40px;
		margin-bottom: 40px;
	background-image: linear-gradient(90deg, #f7f6f3, #f7f6f3 16%, transparent);
		
		font-weight: 600;
		line-height: 120%;
	}
	
	
	.page_title_e{
		font-size: 1.9rem;
	}
	
	/*h1*/
	.page_title{
		font-size: 3.4rem;
	}
	
	.page_subtitle{
		padding-top: 25px;
		font-family: "dnp-shuei-mgothic-std", sans-serif;
		font-size: 2.0rem;
	}
	
	
	.contents_main_inner{

	}
	
	.section_box {
		padding-bottom: 30px;
	}
	
	.contents_box{
	
	}
	
	.contents_section_title_e{
		font-family: "Sen", sans-serif;
		font-size: 1.9rem;
		color: #00b900;
	}
	
	.contents_section_title{
		font-size: 2.8rem;
		font-weight: 600;
		margin-bottom: 40px;
	}
	
	/*h3*/
	.title_bg_green{
		display: block;
		position: relative;
		text-align: left;
		font-size: 2.0rem;
		line-height: 130%;
		font-weight: 600;
		color: #ffffff !important;
		background: url(../img/parts_bg_1.jpg) center center;
		background-size: 320px 320px;
		padding: 12px 20px 12px 20px;
		margin-bottom: 30px;
		text-decoration: none;
		pointer-events: visible;
		overflow: hidden;
		border-radius: 14px;
		-webkit-border-radius: 14px;
		-moz-border-radius: 14px;
	}
	
	.padding_lr25{
		padding-left: 20px;
		padding-right: 20px;
	}
	
	.subtitle_dotline{
		
	}
	
	
	
	
	/*--------------------------------
	タブレット
	「個人面接」ページ　ディレクトリ：private/
	
	--------------------------------*/
	
	.private_catchcopy {
		font-size: 2.4rem;
		line-height: 180%;
	}
	
	.private_introduction_img {
		margin-top: 0px;
		margin-left: 20px;
		max-width: 400px;
		min-width: 300px;
	}
	
	/*--------------------------------
	タブレット
	「傾聴講座」ページ　ディレクトリ：listening/
	
	--------------------------------*/
	
	.listening_catchcopy {
		font-size: 2.4rem;
		line-height: 180%;
	}
	
	.listening_text {
			font-size: 1.65rem;
			letter-spacing: 2px;
			font-weight: 600;
			line-height: 190%;
	}
	
	.listening_introduction_img {
		margin-top: 0px;
		margin-left: 20px;
		max-width: 400px;
		min-width: 360px;
	}
	
	.listening_introduction_img {
			
	}
	
	/*--------------------------------
	タブレット
	「コモンルーム《ひだまり》」ページ　ディレクトリ：common_room/
	
	--------------------------------*/
	
	.common_room_catchcopy {
		font-size: 2.4rem;
		line-height: 180%;
	}
	
	/*--------------------------------
	タブレット
	「企業・各種団体様へのご案内」ページ　ディレクトリ：groups/
	
	--------------------------------*/
	
	.groups_catchcopy {
		font-size: 2.4rem;
		line-height: 180%;
	}
	
	/*--------------------------------
	タブレット
	「当センターについて」ページ　ディレクトリ：about/
	
	--------------------------------*/
	
	.about_introduction{
		
	}
	
	.about_catchcopy{
		font-size: 1.9rem;
		color: #52b532;
		line-height: 170%;
		letter-spacing: 1.5px;
	}
	
	/*img*/
	.about_introduction_img{
		margin-top: -40px;
		margin-left: -20px;
		text-align: left;
		max-width: 540px;
		min-width: auto;
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.about_contents{
		display: block;
		position: relative;
		margin: 0 auto;
		margin-left: -40px;
		margin-right: -40px;
		padding: 80px 40px 40px 40px;
		background: url("../img/bg_litegreen.jpg") center top;
		background-size: 800px 358px;
	}
	
	.about_link_list a.icon_link_aftermark:before,
	.about_link_list a.icon_link_aftermark:after{
		top:auto !important;
		right: 10px;
	}
	
	/*--------------------------------
	タブレット
	「TOPICS」ページ　ディレクトリ：topics/
	
	--------------------------------*/
	
	/*--------------------------------
	タブレット
	「お問い合わせ」ページ　ディレクトリ：contact/
	
	--------------------------------*/
	
	
	
	/*--------------------------------
	タブレット
	「404 Not found」ページ　ディレクトリ：404
	
	--------------------------------*/



}/*iPad用スタイルここまで*/




/*=========================スマホ用スタイルここから（横画面）=========================*/


@media screen and (max-width:896px) and (orientation:landscape) {/*スマホ用 横画面*/

}







/*=========================スマホ用スタイルここから（縦画面）=========================*/

@media screen and ( max-width: 767px ) {/*元767*/

	body {
		background-color: #ffffff !important;
		min-width: 200px !important;
		width: 320px !important;
		width: 100% !important;
		margin-top: 0px !important;
		-webkit-text-size-adjust: 100%;
		
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		
	}
	img {
		/*width: 100%;*/
		height: auto;
		max-width: 100%;
	}


	/* -------------------------------- 
	スマホ
 	レイアウト設定
 	
	-------------------------------- */
	/*大枠の構成
		#top　ページトップアンカー
		.header　ヘッダー
		.drawermenu　グランドメニュー
		.contents_all　コンテンツ
		.footer　フッター
	*/
	
	/* --------------------
	スマホ
	ページトップアンカー
	
	-------------------- */
	
	#top{
		
	}


	/* --------------------
	スマホ
	ヘッダー
	
	-------------------- */
	
	/*div*/
	.header{
		display: block;
		position: relative;
		width: 100%;
		height: 54px;
		/*min-width: 1120px;*/
		margin: 0 auto;
		text-align: right;
		background-color: #ffffff;
		
		z-index: 9999;
	}


	/*固定ヘッダーロゴ　div*/
	.btn_logo{
		display: block;
		position: absolute;
		top:0px;
		left:15px;
		width: calc(100% - 54px);
		min-width: 340px;
		height: 54px;
		
		z-index: 10003;/*グランドメニューは10004; headerは10002*/
		
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.btn_logo a,
	.frontpage .btn_logo p{
		display: block;
		position: relative;
		width: 240px;
		height: 54px;
		background: url(../img/logo.svg) no-repeat left center;
		background-size: auto 30px;
	}
	.frontpage .btn_logo p{
		background: url(../img/logo.svg) no-repeat left center;
		background-size: auto 30px;
	}
	.frontpage .btn_logo p a{
		display: none;
	}
	.btn_logo p span{
		display: none;
	}
	
	.sub_menu_box,
	body.header_narrow_height .sub_menu_box{
		display: none;
	}
	
	body.header_narrow_height .drawer-hamburger {
			position: absolute;
			top: 4px;
			right: 4px;
	}


	/* -------------------------------- 
	スマホ
 	コンテンツ欄
 	
	-------------------------------- */
	
	.anker{
		margin-top:-64px;
		padding-top: 64px;
	}


	/*------------------------------
	スマホ
	フッター
	
	------------------------------*/
	
	#footer{
		display: block;
		position: relative;
		padding: 0px 0px 0px 0px;
	}
	
	/**/
	.footer_inner{
		display: block;
		position: relative;
		padding: 20px 20px 20px 20px;
	}
	
	/*背景が緑のお問い合わせ欄*/
	.footer_inner.footer_inner1{
		background: url(../img/bg_green2.jpg) center top;
		background-size: 800px 358px;
		padding-bottom: 30px;
	}
	
	/*背景がグレーの住所等の欄*/
	.footer_inner.footer_inner2{
		background-color: #f1f3ed;
		padding-top: 30px;
		padding-bottom: 30px;
	}
	
	/*フッターのお問い合わせ欄内側全体*/
	.footer_content_2column{
		display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
		letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
		
		max-width: 1320px;
		margin: 0 auto;
	}
	
	.footer_content_2column .column_inner{
		display: inline-block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
	}
	
	.footer_content_2column .column_inner:nth-of-type(1){
		padding-right: 0px;
	}
	
	.footer_content_2column .column_inner:nth-of-type(2){
	}
	
	.footer_content_2column .column_inner .title_box{
		margin-bottom: 0px;
	}
	
	.footer_content_2column .column_inner .section_title_e,
	.footer_content_2column .column_inner .section_title{
		color: #ffffff !important;
	}
	
	.footer_contact_link_text{
		font-size: 1.6rem;
		font-weight: 600;
		color: #ffffff;
		margin-bottom: 20px;
		letter-spacing: 0rem;
	}
	
	.footer_contact_link_box{
		display:block;
		letter-spacing: normal;/* 文字間を詰めて隙間を削除する */
		position: relative;
	}
	
	.footer_contact_link_box_inner{
		display: block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
	}
	
	.footer_contact_link_box_inner:nth-of-type(1){
		padding-right: 0px;
	}
	
	.footer_contact_link_box_inner:nth-of-type(2){
	}
	
	.footer_contact_tel{
		text-align: center;
	}
	
	.footer_contact_tel a{
		font-size: 2.8rem;
		color: #ffffff;
		line-height: 100%;
		pointer-events: none;
	}
	
	.footer_contact_tel a:before{
		content:"";
		display: inline-block;
		position: relative;
		vertical-align: middle;
		margin-right: 0px;
		top:-2px;
		width: 24px;
		height: 24px;
		background: url("../img/icon_24_tel_white.svg") no-repeat center center;
		background-size: 24px 24px;
	}
	
	.footer_contact_time{
		padding-left: 24px;
		font-size: 1.5rem;
		color: #ffffff;
		text-align: center;
		margin-bottom: 20px;
	}
	
	
	/*p*/
	.footer_contact_button{
		text-align: center;
	}
	
	/*a*/
	.footer_contact_button_white{
		display: inline-block;
		position: relative;
		text-align: center;
		font-size: 1.5rem;
		line-height: 130%;
		font-weight: 600;
		color: #00b300 !important;
		background-color: #ffffff;
		padding: 12px 22px 12px 22px;
		min-width: 240px;
		text-decoration: none;
	
		pointer-events: visible;
		overflow: hidden;
		border-radius: 100px;
		-webkit-border-radius: 100px;
		-moz-border-radius: 100px;
		
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
		
		z-index: 1;
	}
	
	.footer_contact_button_white:after{
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.footer_contact_button_white:before{
		font-family: "Material Symbols Outlined";
		content: "\e158";
		display: inline-flex; /* 子要素をflexboxで揃える */
		flex-direction: column; /* 子要素をflexboxにより縦並びに揃える */
		justify-content: center; /* 子要素をflexboxにより上下中央に配置する */
		align-items: center;  /* 子要素をflexboxにより左右中央に配置する*/
		position: relative;
		color: #00b300 !important;
		width: 18px;
		height: 18px;
		font-size: 18px;
		font-weight: 500;
		vertical-align: middle;
		line-height: normal;
		top:0px;
		margin-right: 3px;
		border-radius: 100px;
		-webkit-border-radius: 100px;
		-moz-border-radius: 100px;
	}
	
	.footer_contact_button_white:hover,
	.footer_contact_button_white:hover:before{
		opacity: 0.9;
	}
	
	
	
	/*フッターのロゴや住所欄内側全体*/
	.footer_about_box{
		max-width: 1560px;
		margin: 0 auto;
	}
	
	.footer_logo_box{
		display: block;
		position: relative;
		margin: 0 auto;
		max-width: 280px;
		margin-bottom: 20px;
	}
	
	.footer_logo{
		
	}
	
	.footer_address_box{
		display: block;
		position: relative;
		margin: 0 auto;
		margin-bottom: 20px;
	}
	
	.footer_address{
		position: relative;
		font-size: 1.5rem;
		padding-left: 0px;
		margin-bottom: 20px;
		padding-bottom: 20px;
		border-bottom: dotted 1px #989898;
	}
	
	/*a*/
	.footer_tel_link{
		text-decoration: underline;
		pointer-events: visible;/*PCのみリンク無視*/
	}
	
	.footer_tel_link:hover{
		text-decoration: underline;
	}
	
	.footer_link_box{
		padding-left: 0px;
		
	}
	
	.footer_link_title{
		display: inline-block;
		font-size: 1.2rem;
		vertical-align: top;
		padding-right: 0rem;
		padding: 3px 10px 3px 10px;
		color: #ffffff;
		background-color: #58ae44;
		margin-bottom: 10px;
	}
	
	/*ul*/
	.footer_link_list {
		display: block;
		vertical-align: top;
		padding-left: 0rem;
		border-left: solid 0px #333333;
		margin-bottom: 30px;
	}
	
	.footer_link_list li {
	
	}
	
	.footer_link_list li a {
		display: block;
		position: relative;
		font-family: 'Noto Sans JP', sans-serif;
		text-align: left;
		color: #333333;
		font-size: 1.5rem;
		padding-left: 2.0rem;
		-webkit-transition: all 0.1s ease-in-out;
		-moz-transition: all 0.1s ease-in-out;
		-o-transition: all 0.1s ease-in-out;
		transition: all 0.1s ease-in-out;
	}
	
	.footer_link_list li a:before {
		content:"●";
		display: inline-block;
		position: absolute;
		left: 0rem;
		width: 1.5rem;
		height: 1.5rem;
		font-size: 8px;
		color: #00b900;
		vertical-align: middle;
		margin-top:7px;
	}
	
	.footer_link_list li a span{
		display: block;
		position: relative;
		font-family: "Sen", sans-serif;
		text-align: center;
		font-weight: 400;
		font-size: 1.1rem;
		color: #333333;
		padding-top: 3px;
		
	}
	
	.footer_link_list li a:hover {
		text-decoration: underline;
		color: #00b900;
	}
	
	
	
	
	/*コピーライト*/
	.footer_copyright_box{
		display: block;
		position: fixed;
		top:auto;
		left:auto;
		width: 100%;
		padding-right: 46px;
		transform: rotate(90deg);
		z-index: 8888;
	}
	
	
	/*コピーライト*/
	.footer_copyright_box{
		display: block;
		position: relative;
		transform: rotate(0deg);
		top:auto;
		left:auto;
		width: 100%;
	}
	
	.footer_copyright{
		display: block;
	}
	
	.footer_copyright_inner{
	
	}
	
	.footer_copyright_inner p{
		font-size: 1.3rem;
		color: #6b6a6a;
		white-space: normal;
		line-height: 150%;
		text-align: left;
	}
	
/* ----------ページTOPへボタン---------- */
	#pagetop_wrapper {	position: fixed;
		
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		right: 4px;
		bottom: 4px;
		width: 46px;
		height: 46px;
		padding: 0;
		
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		
		z-index: 100;
	}
	.pagetop{
		display: inline-block;
		position: relative;
		width: 46px;
		height: 46px;
	}


	/*a*/
	.pagetop a {
		display: inline-block;
		position: relative;
		
		width: 46px;
		height: 46px;
		
		/*background-color: #ffffff;*/
		
		border: solid 1px #00b900 !important;
		
		border-radius: 100px;
		-webkit-border-radius: 100px;
		-moz-border-radius: 100px;
		
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	.pagetop a:after {
		font-family: "Material Symbols Outlined";
		content: "\e5d8";
		position: absolute;
		 top: 50%;
		 left: 50%;
		 transform: translate(-50%, -50%);
		 -webkit-transform: translate(-50%, -50%);
		 -ms-transform: translate(-50%, -50%);
		font-size: 24px;
		font-weight: 100;
		color: #00b900;
	}
	.pagetop a:hover {
		opacity: 0.8;
	}
	.pagetop a span {
		display:none;
	}


	/*------------------------------
	スマホ
	各パーツ設定
	
	------------------------------*/

	/* -------------------- H1 -------------------- */h1{
		font-size: 2.1rem;
		line-height: 130%;
	}


	/* -------------------- H2 -------------------- */h2{
		font-size: 1.8rem;
		line-height: 130%;
	}


	/* -------------------- H3 -------------------- */h3{
		font-size: 1.7rem;
		line-height: 130%;
	}


	/* -------------------- H4/H5/H6 見出し設定 -------------------- */h4{
		font-weight:500;
	}h5{
		font-weight:500;
	}h6{
		font-weight:500;
	}


	/* ---------- 記事のpノーマル ---------- */
	/*コメントタグをpダグで入れる場合に使用（<p class="comment">コメント</p>）*/
	p.comment {
		display: none;
	}


	/*右にfloatさせる　主にpタグに指定*/
	.float_left{
		float: left;
		padding-right: 10px;
	}
	.float_none{
		float:none;
		margin-right: 0px;
	}


	/* -----------------------
	スマホ
	各パーツ設定
	
	----------------------- */
	/* ---------- 記事のpノーマル ---------- */
	/*PCのスタイルをそのまま利用*/
	/*サイズアップ*/
	/*基本はPCのスタイルをそのまま利用*/
	/*SPのみフォントサイズを変更する場合*/
	.sp_fs_100{font-size:100% !important;}
	.sp_fs_110{font-size:110% !important;}
	.sp_fs_120{font-size:120% !important;}
	.sp_fs_130{font-size:130% !important;}
	.sp_fs_140{font-size:140% !important;}
	.sp_fs_150{font-size:150% !important;}
	.sp_fs_160{font-size:160% !important;}
	.sp_fs_170{font-size:170% !important;}
	.sp_fs_180{font-size:180% !important;}
	.sp_fs_190{font-size:190% !important;}
	.sp_fs_200{font-size:200% !important;}
	.sp_fs_210{font-size:210% !important;}
	.sp_fs_220{font-size:220% !important;}
	.sp_fs_230{font-size:230% !important;}
	.sp_fs_240{font-size:240% !important;}
	.sp_fs_250{font-size:250% !important;}
	.sp_fs_260{font-size:260% !important;}
	.sp_fs_270{font-size:270% !important;}
	.sp_fs_280{font-size:280% !important;}
	.sp_fs_290{font-size:290% !important;}
	.sp_fs_300{font-size:300% !important;}/*サイズダウン*/
	/*基本はPCのスタイルをそのまま利用*/
	/*SPのみフォントサイズを変更する場合*/
	.sp_fs_95{font-size:95% !important;}
	.sp_fs_90{font-size:90% !important;}
	.sp_fs_85{font-size:85% !important;}
	.sp_fs_80{font-size:80% !important;}
	.sp_fs_75{font-size:75% !important;}
	.sp_fs_70{font-size:70% !important;}
	.sp_fs_60{font-size:60% !important;}
	.sp_fs_50{font-size:50% !important;}
	.sp_fs_40{font-size:40% !important;}
	.sp_fs_30{font-size:30% !important;}
	.sp_fs_20{font-size:20% !important;}
	.sp_fs_10{font-size:10% !important;}
	
	/* ---------- スマホで非表示（display: none）にしたいものを囲むspanのclass ---------- */
	.sp_none{
		display: none !important;
	}


	/* ---------- スマホで非表示（display: none）にしたいものを囲むspanのclass ---------- */
	.sp_none{
		display: none !important;
	}
	.sp_mb0{
		margin-bottom: 0px !important;
	}
	.sp_mb1{
		margin-bottom: 1px !important;
	}
	.sp_mb2{
		margin-bottom: 2px !important;
	}
	.sp_mb3{
		margin-bottom: 3px !important;
	}
	.sp_mb4{
		margin-bottom: 4px !important;
	}
	.sp_mb5{
		margin-bottom: 5px !important;
	}
	.sp_mb6{
		margin-bottom: 6px !important;
	}
	.sp_mb7{
		margin-bottom: 7px !important;
	}
	.sp_mb8{
		margin-bottom: 8px !important;
	}
	.sp_mb9{
		margin-bottom: 9px !important;
	}
	.sp_mb10{
		margin-bottom: 10px !important;
	}
	.sp_mb15{
		margin-bottom: 15px !important;
	}
	.sp_mb20{
		margin-bottom: 20px !important;
	}
	.sp_mb25{
		margin-bottom: 25px !important;
	}
	.sp_mb30{
		margin-bottom: 30px !important;
	}
	.sp_mb40{
		margin-bottom: 40px !important;
	}
	.sp_mb50{
		margin-bottom: 50px !important;
	}
	.sp_mb60{
		margin-bottom: 60px !important;
	}
	.sp_mb70{
		margin-bottom: 70px !important;
	}
	.sp_mb80{
		margin-bottom: 80px !important;
	}
	.sp_mb90{
		margin-bottom: 90px !important;
	}
	.sp_mb100{
		margin-bottom: 100px !important;
	}
	.sp_mt0{
		margin-top: 0px !important;
	}
	.sp_mt10{
		margin-top: 10px !important;
	}
	.sp_mt20{
		margin-top: 20px !important;
	}
	.sp_mt30{
		margin-top: 30px !important;
	}
	.sp_mt40{
		margin-top: 40px !important;
	}
	.sp_mt50{
		margin-top: 50px !important;
	}
	.sp_mt60{
		margin-top: 60px !important;
	}
	.sp_mt70{
		margin-top: 70px !important;
	}
	.sp_mt80{
		margin-top: 80px !important;
	}
	.sp_mt90{
		margin-top: 90px !important;
	}
	.sp_mt100{
		margin-top: 100px !important;
	}
	.sp_mt-10{
		margin-top: -10px !important;
	}
	.sp_mt-20{
		margin-top: -20px !important;
	}
	.sp_mt-30{
		margin-top: -30px !important;
	}
	.sp_mt-40{
		margin-top: -40px !important;
	}
	.sp_mt-50{
		margin-top: -50px !important;
	}
	.sp_mt-60{
		margin-top: -60px !important;
	}
	.sp_mt-70{
		margin-top: -70px !important;
	}
	.sp_mt-80{
		margin-top: -80px !important;
	}
	.sp_mt-90{
		margin-top: -90px !important;
	}
	.sp_mt-100{
		margin-top: -100px !important;
	}
	.sp_pb0{
		padding-bottom: 0px !important;
	}
	.sp_pb1{
		padding-bottom: 1px !important;
	}
	.sp_pb2{
		padding-bottom: 2px !important;
	}
	.sp_pb3{
		padding-bottom: 3px !important;
	}
	.sp_pb4{
		padding-bottom: 4px !important;
	}
	.sp_pb5{
		padding-bottom: 5px !important;
	}
	.sp_pb6{
		padding-bottom: 6px !important;
	}
	.sp_pb7{
		padding-bottom: 7px !important;
	}
	.sp_pb8{
		padding-bottom: 8px !important;
	}
	.sp_pb9{
		padding-bottom: 9px !important;
	}
	.sp_pb10{
		padding-bottom: 10px !important;
	}
	.sp_pb15{
		padding-bottom: 15px !important;
	}
	.sp_pb20{
		padding-bottom: 20px !important;
	}
	.sp_pb25{
		padding-bottom: 25px !important;
	}
	.sp_pb30{
		padding-bottom: 30px !important;
	}
	.sp_pb40{
		padding-bottom: 40px !important;
	}
	.sp_pb50{
		padding-bottom: 50px !important;
	}
	.sp_pb60{
		padding-bottom: 60px !important;
	}
	.sp_pb70{
		padding-bottom: 70px !important;
	}
	.sp_pb80{
		padding-bottom: 80px !important;
	}
	.sp_pb90{
		padding-bottom: 90px !important;
	}
	.sp_pb100{
		padding-bottom: 100px !important;
	}
	.sp_pt0{
		padding-top: 0px !important;
	}
	.sp_pt10{
		padding-top: 10px !important;
	}
	.sp_pt20{
		padding-top: 20px !important;
	}
	.sp_pt30{
		padding-top: 30px !important;
	}
	.sp_pt40{
		padding-top: 40px !important;
	}
	.sp_pt50{
		padding-top: 50px !important;
	}
	.sp_pt60{
		padding-top: 60px !important;
	}
	.sp_pt70{
		padding-top: 70px !important;
	}
	.sp_pt80{
		padding-top: 80px !important;
	}
	.sp_pt90{
		padding-top: 90px !important;
	}
	.sp_pt100{
		padding-top: 100px !important;
	}
	
	.sp_r1{border-radius: 1px;}
	.sp_r2{border-radius: 2px;}
	.sp_r3{border-radius: 3px;}
	.sp_r4{border-radius: 4px;}
	.sp_r5{border-radius: 5px;}
	.sp_r6{border-radius: 6px;}
	.sp_r7{border-radius: 7px;}
	.sp_r8{border-radius: 8px;}
	.sp_r9{border-radius: 9px;}
	.sp_r10{border-radius: 10px;}
	.sp_r11{border-radius: 11px;}
	.sp_r12{border-radius: 12px;}
	.sp_r13{border-radius: 13px;}
	.sp_r14{border-radius: 14px;}
	.sp_r15{border-radius: 15px;}
	.sp_r16{border-radius: 16px;}
	.sp_r17{border-radius: 17px;}
	.sp_r18{border-radius: 18px;}
	.sp_r19{border-radius: 19px;}
	.sp_r20{border-radius: 20px;}
	.sp_r25{border-radius: 25px;}
	.sp_r30{border-radius: 30px;}
	.sp_r35{border-radius: 35px;}
	.sp_r40{border-radius: 40px;}
	.sp_r50{border-radius: 50px;}


	/*スマホのみ左右中央揃えの指定　text-alignの略*/
	.sp_ta_center{text-align: center !important;}
	.sp_ta_left{text-align: left !important;}
	.sp_ta_right{text-align: right !important;}
	/* ---------- 記事のpノーマル ---------- */
	/* ---------- 白ベタエリア　div ---------- */
	/* ---------- 写真の配置設定 ---------- */
	/*WPのメディアライブラリから挿入されたとき、自動的に挿入されるdivのclass*/
	.wp-caption {
	}
	.wp-caption img {
		margin: 0;
		padding: 0;
		border: 0 none;
		
		height: auto;
	}
	
	ul.bottom_line_gray{
		border-top: solid 0px #d7dad0;/*スマホでは0pxに*/
	}
	
	ul.bottom_line_gray li{
		position: relative;
		padding: 0.4rem 0rem 1.1rem 0.4rem;
	}
	
	ul.bottom_line_gray li:after{
		content:"";
		position: absolute;
		left: -1.5rem;
		right: 0;
		bottom: 0;
		height: 1px;
		border-bottom: solid 1px #d7dad0;
	}


	/* ---------- 画像配置関連 キャプション付きの回し込み ---------- */img{}/*画像とキャプション両方を囲んだDIVのクラス設定：回り込み無し*/
	.alignone{
		display: block;
		width: 100%!important;
		margin-bottom: 10px;
		clear: left;
	}


	/*画像とキャプション両方を囲んだDIVのクラス設定：中央揃え*/
	/* ----------写真を中央に配置---------- */
	/* ----------画像まわしこみを解除----------*/
	.aligncenter {
		float: none;
	}


	/*画像とキャプション両方を囲んだDIVのクラス設定：画像が左寄せになる場合*/
	/*メディアライブラリから挿入した時の、imgのclass*/
	.aligncenter {
		padding-right: 0px;
		padding-left: 0px;
		margin: 0 auto;
		margin-bottom: 10px;
		width: 100%;
		height: auto;
		text-align: center;
		
		float: none;
	}
	.alignright {
		padding-right: 0px;
		margin-right: 0px;
		padding-left: 0px;
		margin-left: 0px;
		margin-bottom: 10px;
		width: 100%;
		height: auto;
		text-align: center;
		
		float: none;
	}
	.alignleft {
		padding-right: 0px;
		margin-right: 0px;
		padding-left: 0px;
		margin-left: 0px;
		margin-bottom: 10px;
		width: 100%;
		height: auto;
		text-align: center;
		
		float: none;
	}


	/*PCではalignleft、alignrightを指定しつつ、スマホではセンターにしたい場合。　※例）alignleft sp_aligncenter 併記*/
	.sp_aligncenter {
		display: block;
		padding-right: 0px;
		padding-left: 0px;
		margin: 0 auto !important;
		margin-bottom: 10px !important;
		height: auto;
		text-align: center !important;
		
		float: none;
	}
	.alignnone {
		padding-right: 0px;
		margin-right: 0px;
		padding-left: 0px;
		margin-left: 0px;
		margin-bottom: 10px;
		width: 100%;
		height: auto;
		text-align: center;
		
		float: none;
	}


	/*PCではalignleft、alignrightを指定しつつ、スマホではセンターにしたい場合。　※例）alignleft sp_alignnone 併記*/
	.sp_alignnone {
		display: block;
		padding-right: 0px;
		padding-left: 0px;
		margin: 0 auto !important;
		margin-bottom: 10px !important;
		height: auto;
		text-align: center !important;
		
		float: none;
	}
	img.aligncenter,
	img.alignright,
	img.alignleft,
	img.alignnone{
		text-align: center;
		margin: 0 auto;
		max-width: 100% !important;
	}


	/* ----------写真を左に配置---------- */
	.alignleft img {
		display: block;
		float: none;
		padding-right: 0px !important;
		margin-right: 0px !important;
		padding-left: 0px !important;
		margin-left: 0px !important;
		margin: 0 auto !important;
		margin-bottom: 10px !important;
		max-width: 480px !important;
		width: 100% !important;
		height: auto;
	}


	/* ----------写真を右側に配置---------- */
	.alignright img {
		display: block;
		float: none;
		padding-right: 0px !important;
		margin-right: 0px !important;
		padding-left: 0px !important;
		margin-left: 0px !important;
		margin: 0 auto !important;
		margin-bottom: 10px !important;
		max-width: 480px !important;
		width: 100% !important;
		height: auto;
	}


	/* ----------スマホだけ写真を中央に配置---------- */
	.aligncenter img,
	.sp_aligncenter img {
		display: block;
		float: none;
		padding-right: 0px !important;
		margin-right: 0px !important;
		padding-left: 0px !important;
		margin-left: 0px !important;
		margin: 0 auto !important;
		margin-bottom: 10px !important;
		max-width: 480px !important;
		width: 100% !important;
		height: auto;
	}


	/*キャプションのスタイル（alignnone、alignleft、alignrightの場合）*/
	p.wp-caption-text,
	.wp-caption-text {
		display: block;
		text-align: left;
		font-size: 90%;
		line-height: 140%;
		color: #797979;
		clear: both;
	}


	/*キャプションのスタイル（aligncenterの場合）*/
	.aligncenter .wp-caption-text{
		display: block;
		text-align: left;
		font-size: 90%;
		line-height: 130%;
		color: #797979;
		clear: both;
	}


	/* 右寄せで写真を縦に並べるカラム状のボックス */
	
	.photo_column_right{
		float:none;
	 	margin-left:0px;
	}


	/*alignleft、alignright等と併記して、横幅を%可変にする スマホのみ*/
	.sp_w10per{width: 10% !important;}
	.sp_w20per{width: 20% !important;}
	.sp_w30per{width: 30% !important;}
	.sp_w40per{width: 40% !important;}
	.sp_w50per{width: 50% !important;}
	.sp_w60per{width: 60% !important;}
	.sp_w70per{width: 70% !important;}
	.sp_w80per{width: 80% !important;}
	.sp_w90per{width: 90% !important;}
	.sp_w100per{width: 100% !important;}.sp_w10per img,
	.sp_w20per img,
	.sp_w30per img,
	.sp_w40per img,
	.sp_w50per img,
	.sp_w60per img,
	.sp_w70per img,
	.sp_w80per img,
	.sp_w90per img,
	.sp_w100per img{
		width: 100%;
		max-width: 100%;
		height: auto;
	}
	.trim.sp_w100per {
		display: block;
		overflow: hidden;
		position: relative;
		width: 100%;
		padding-bottom: 75%;/*4:3*/
		margin-bottom: 10px;
	}
	.trim.sp_w10per{
		width: 10%;
		padding-bottom: 7.5%;
	}
	.trim.sp_w20per{
		width: 20%;
		padding-bottom: 15%;
	}
	.trim.sp_w30per{
		width: 30%;
		padding-bottom: 22.5%;
	}
	.trim.sp_w40per{
		width: 40%;
		padding-bottom: 30%;
	}
	.trim.sp_w50per{
		width: 50%;
		padding-bottom: 37.5%;
	}
	.trim.sp_w60per{
		width: 60%;
		padding-bottom: 45%;
	}
	.trim.sp_w70per{
		width: 70%;
		padding-bottom: 52.5%;
	}
	.trim.sp_w80per{
		width: 80%;
		padding-bottom: 60%;
	}
	.trim.sp_w90{
		width: 90%;
		padding-bottom: 67.5%;
	}
	.trim.sp_w100perper{
		width: 100%;
		padding-bottom: 75%;
	}
	.trim_wide.sp_w100per {
		display: block;
		overflow: hidden;
		position: relative;
		width: 100%;
		padding-bottom: 56.625%;/*16:9*/
		margin-bottom: 10px;
	}
	.trim_wide.sp_w10per{
		width: 10%;
		padding-bottom: 5.6625%;
	}
	.trim_wide.sp_w20per{
		width: 20%;
		padding-bottom: 11.325%;
	}
	.trim_wide.sp_w30per{
		width: 30%;
		padding-bottom: 17%;
	}
	.trim_wide.sp_w40per{
		width: 40%;
		padding-bottom: 22.65%;
	}
	.trim_wide.sp_w50per{
		width: 50%;
		padding-bottom: 28.3125%;
	}
	.trim_wide.sp_w60per{
		width: 60%;
		padding-bottom: 33.975%;
	}
	.trim_wide.sp_w70per{
		width: 70%;
		padding-bottom: 39.6375%;
	}
	.trim_wide.sp_w80per{
		width: 80%;
		padding-bottom: 45.3%;
	}
	.trim_wide.sp_w90per{
		width: 90%;
		padding-bottom: 50.9625%;
	}
	.trim_wide.sp_w100per{
		width: 100%;
		padding-bottom: 56.625%;
	}
	.trim.sp_w100per img,
	.trim_wide.sp_w100per img {
		width: 100%;
		left: 50%;
		left: -webkit-calc(50%) ;
		left: calc(50%) ;
	}
	.sp_aligncenter.sp_w10per img,
	.sp_alignnone.sp_w10per img,
	.sp_aligncenter.sp_w20per img,
	.sp_alignnone.sp_w20per img,
	.sp_aligncenter.sp_w30per img,
	.sp_alignnone.sp_w30per img,
	.sp_aligncenter.sp_w40per img,
	.sp_alignnone.sp_w40per img,
	.sp_aligncenter.sp_w50per img,
	.sp_alignnone.sp_w50per img,
	.sp_aligncenter.sp_w60per img,
	.sp_alignnone.sp_w60per img,
	.sp_aligncenter.sp_w70per img,
	.sp_alignnone.sp_w70per img,
	.sp_aligncenter.sp_w80per img,
	.sp_alignnone.sp_w80per img,
	.sp_aligncenter.sp_w90per img,
	.sp_alignnone.sp_w90per img,
	.sp_aligncenter.sp_w100per img,
	.sp_alignnone.sp_w100per img{
		width: 100%;
		width: -webkit-calc(100%) ;
		width: calc(100%) ;
		left: 0% !important;
		left: -webkit-calc(0px) !important;
		left: calc(0px) !important;
	}
	.trim.sp_aligncenter.trim.sp_w10per img,
	.trim.sp_alignnone.trim.sp_w10per img,
	.trim.sp_aligncenter.trim.sp_w20per img,
	.trim.sp_alignnone.trim.sp_w20per img,
	.trim.sp_aligncenter.trim.sp_w30per img,
	.trim.sp_alignnone.trim.sp_w30per img,
	.trim.sp_aligncenter.trim.sp_w40per img,
	.trim.sp_alignnone.trim.sp_w40per img,
	.trim.sp_aligncenter.trim.sp_w50per img,
	.trim.sp_alignnone.trim.sp_w50per img,
	.trim.sp_aligncenter.trim.sp_w60per img,
	.trim.sp_alignnone.trim.sp_w60per img,
	.trim.sp_aligncenter.trim.sp_w70per img,
	.trim.sp_alignnone.trim.sp_w70per img,
	.trim.sp_aligncenter.trim.sp_w80per img,
	.trim.sp_alignnone.trim.sp_w80per img,
	.trim.sp_aligncenter.trim.sp_w90per img,
	.trim.sp_alignnone.trim.sp_w90per img,
	.trim.sp_aligncenter.trim.sp_w100per img,
	.trim.sp_alignnone.trim.sp_w100per img,
	.trim_wide.sp_aligncenter.trim_wide.sp_w10per img,
	.trim_wide.sp_alignnone.trim_wide.sp_w10per img,
	.trim_wide.sp_aligncenter.trim_wide.sp_w20per img,
	.trim_wide.sp_alignnone.trim_wide.sp_w20per img,
	.trim_wide.sp_aligncenter.trim_wide.sp_w30per img,
	.trim_wide.sp_alignnone.trim_wide.sp_w30per img,
	.trim_wide.sp_aligncenter.trim_wide.sp_w40per img,
	.trim_wide.sp_alignnone.trim_wide.sp_w40per img,
	.trim_wide.sp_aligncenter.trim_wide.sp_w50per img,
	.trim_wide.sp_alignnone.trim_wide.sp_w50per img,
	.trim_wide.sp_aligncenter.trim_wide.sp_w60per img,
	.trim_wide.sp_alignnone.trim_wide.sp_w60per img,
	.trim_wide.sp_aligncenter.trim_wide.sp_w70per img,
	.trim_wide.sp_alignnone.trim_wide.sp_w70per img,
	.trim_wide.sp_aligncenter.trim_wide.sp_w80per img,
	.trim_wide.sp_alignnone.trim_wide.sp_w80per img,
	.trim_wide.sp_aligncenter.trim_wide.sp_w90per img,
	.trim_wide.sp_alignnone.trim_wide.sp_w90per img,
	.trim_wide.sp_aligncenter.trim_wide.sp_w100per img,
	.trim_wide.sp_alignnone.trim_wide.sp_w100per{
		width: 100%;
		width: -webkit-calc(100%) ;
		width: calc(100%) ;
		left: 50% !important;
		left: -webkit-calc(50% - 0px) !important;
		left: calc(50% - 0px) !important;
	}


	/*スマホで、画像が大きすぎる場合、max-widthを指定して中央に配置　p このclassが指定されたpタグでくくったimgに適用される*/
	/*width:150px*/
	.img_width_150,
	.img_width_150{
		display: block !important;
		float: none !important;
		min-width: 300px;
		width: 100% !important;
		text-align: center !important;
	}
	.img_width_150 img,
	.img_width_150 img{
		max-width: 150px !important;
	}
	.img_width_150 img.alignright,
	.img_width_150 img.alignright,
	.img_width_150 img.alignleft,
	.img_width_150 img.alignleft{
		float: none !important;
	}


	/*width:180px*/
	.img_width_180,
	.img_width_180{
		display: block !important;
		float: none !important;
		min-width: 300px;
		width: 100% !important;
		text-align: center !important;
	}
	.img_width_180 img,
	.img_width_180 img{
		max-width: 180px !important;
	}
	.img_width_180 img.alignright,
	.img_width_180 img.alignright,
	.img_width_180 img.alignleft,
	.img_width_180 img.alignleft{
		float: none !important;
	}


	/*width:200px*/
	.img_width_200,
	.img_width_200{
		display: block !important;
		float: none !important;
		min-width: 300px;
		width: 100% !important;
		text-align: center !important;
	}
	.img_width_200 img,
	.img_width_200 img{
		max-width: 200px !important;
	}
	.img_width_200 img.alignright,
	.img_width_200 img.alignright,
	.img_width_200 img.alignleft,
	.img_width_200 img.alignleft{
		float: none !important;
	}


	/*width:250px*/
	.img_width_250,
	.img_width_250{
		display: block !important;
		float: none !important;
		min-width: 300px;
		width: 100% !important;
		text-align: center !important;
	}
	.img_width_250 img,
	.img_width_250 img{
		max-width: 250px !important;
	}
	.img_width_250 img.alignright,
	.img_width_250 img.alignright,
	.img_width_250 img.alignleft,
	.img_width_250 img.alignleft{
		float: none !important;
	}


	/*width:300px*/
	.img_width_300,
	.img_width_300{
		display: block !important;
		float: none !important;
		min-width: 300px;
		width: 100% !important;
		text-align: center !important;
	}
	.img_width_300 img,
	.img_width_300 img{
		max-width: 300px !important;
	}
	.img_width_300 img.alignright,
	.img_width_300 img.alignright,
	.img_width_300 img.alignleft,
	.img_width_300 img.alignleft{
		float: none !important;
	}


	/*スマホで画像の最大の横幅を規制して、center揃え　imgを囲んでいるdivやpタグにつけるclass*/
	.sp_width_10,
	.sp_width_16,
	.sp_width_20,
	.sp_width_24,
	.sp_width_30,
	.sp_width_36,
	.sp_width_40,
	.sp_width_48,
	.sp_width_50,
	.sp_width_60,
	.sp_width_70,
	.sp_width_80,
	.sp_width_90,
	.sp_width_100,
	.sp_width_120,
	.sp_width_160,
	.sp_width_180,
	.sp_width_210,
	.sp_width_220,
	.sp_width_240,
	.sp_width_270,
	.sp_width_300,
	.sp_width_320,
	.sp_width_340,
	.sp_width_420{
		width: 100% !important;
		float: none !important;
		text-align: center;
	}
	.sp_width_10 img{
		max-width: 10px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_16 img{
		max-width: 16px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_20 img{
		max-width: 20px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_24 img{
		max-width: 24px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_30 img{
		max-width: 30px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_36 img{
		max-width: 36px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_40 img{
		max-width: 40px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_48 img{
		max-width: 48px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_50 img{
		max-width: 50px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_60 img{
		max-width: 60px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_70 img{
		max-width: 70px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_80 img{
		max-width: 80px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_90 img{
		max-width: 90px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_100 img{
		max-width: 100px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_120 img{
		max-width: 120px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_160 img{
		max-width: 160px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_180 img{
		max-width: 180px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_210 img{
		max-width: 210px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_220 img{
		max-width: 220px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_240 img{
		max-width: 240px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_270 img{
		max-width: 270px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_300 img{
		max-width: 300px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_320 img{
		max-width: 320px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_340 img{
		max-width: 340px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}
	.sp_width_420 img{
		max-width: 420px !important;
		height: auto !important;
		text-align: center !important;
		float: none;
	}


	/*囲んでいるdivやpではなく、imgに直接classを追加した場合*/
	img.sp_width_10,
	img.sp_width_16,
	img.sp_width_20,
	img.sp_width_24,
	img.sp_width_30,
	img.sp_width_36,
	img.sp_width_40,
	img.sp_width_48,
	img.sp_width_50,
	img.sp_width_60,
	img.sp_width_70,
	img.sp_width_80,
	img.sp_width_90,
	img.sp_width_100,
	img.sp_width_120,
	img.sp_width_160,
	img.sp_width_180,
	img.sp_width_210,
	img.sp_width_220,
	img.sp_width_240,
	img.sp_width_270,
	img.sp_width_300,
	img.sp_width_320,
	img.sp_width_340,
	img.sp_width_420{
		height: auto !important;
	}img.sp_width_10{max-width: 10px;}
	img.sp_width_16{max-width: 16px;}
	img.sp_width_20{max-width: 20px;}
	img.sp_width_24{max-width: 24px;}
	img.sp_width_30{max-width: 30px;}
	img.sp_width_36{max-width: 36px;}
	img.sp_width_40{max-width: 40px;}
	img.sp_width_48{max-width: 48px;}
	img.sp_width_50{max-width: 50px;}
	img.sp_width_60{max-width: 60px;}
	img.sp_width_70{max-width: 70px;}
	img.sp_width_80{max-width: 80px;}
	img.sp_width_90{max-width: 90px;}
	img.sp_width_100{max-width: 100px;}
	img.sp_width_120{max-width: 120px;}
	img.sp_width_160{max-width: 160px;}
	img.sp_width_180{max-width: 180px;}
	img.sp_width_210{max-width: 210px;}
	img.sp_width_220{max-width: 220px;}
	img.sp_width_240{max-width: 240px;}
	img.sp_width_270{max-width: 270px;}
	img.sp_width_300{max-width: 300px;}
	img.sp_width_320{max-width: 320px;}
	img.sp_width_340{max-width: 340px;}
	img.sp_width_420{max-width: 420px;}/*スマホ用横幅ピクセル指定*/
	.sp_w10px{width: 10px !important;}
	.sp_w20px{width: 20px !important;}
	.sp_w30px{width: 30px !important;}
	.sp_w40px{width: 40px !important;}
	.sp_w50px{width: 50px !important;}
	.sp_w60px{width: 60px !important;}
	.sp_w70px{width: 70px !important;}
	.sp_w80px{width: 80px !important;}
	.sp_w90px{width: 90px !important;}
	.sp_w100px{width: 100px !important;}
	.sp_w110px{width: 110px !important;}
	.sp_w120px{width: 120px !important;}
	.sp_w130px{width: 130px !important;}
	.sp_w140px{width: 140px !important;}
	.sp_w150px{width: 150px !important;}
	.sp_w160px{width: 160px !important;}
	.sp_w170px{width: 170px !important;}
	.sp_w180px{width: 180px !important;}
	.sp_w190px{width: 190px !important;}
	.sp_w200px{width: 200px !important;}
	.sp_w300px{width: 300px !important;}
	.sp_w400px{width: 400px !important;}
	.sp_w500px{width: 500px !important;}
	.sp_w600px{width: 600px !important;}.sp_w10px img,
	.sp_w20px img,
	.sp_w30px img,
	.sp_w40px img,
	.sp_w50px img,
	.sp_w60px img,
	.sp_w70px img,
	.sp_w80px img,
	.sp_w90px img,
	.sp_w100px img,
	.sp_w110px img,
	.sp_w120px img,
	.sp_w130px img,
	.sp_w140px img,
	.sp_w150px img,
	.sp_w160px img,
	.sp_w170px img,
	.sp_w180px img,
	.sp_w190px img,
	.sp_w200px img{
		width: 100%;
		max-width: 100%;
		height: auto;
	}
	.sp_mw280px{max-width: 280px !important; width: 100%;}
	.sp_mw300px{max-width: 300px !important; width: 100%;}
	.sp_mw375px{max-width: 375px !important; width: 100%;}/* ---------- 記事内のテーブル設定 ---------- */
	/*レスポンシブさせたくないtableには「no_responsive_table」というclassを記述する*/
	/*.gsc-table-result　は、Googleの検索結果のテーブル*/
	/*.gcsc-branding　は、Googleの検索結果の下のpowered byのテーブル*/
	/*.table_img_2column は、横並びの画像をスマホでも横並びのまま表示するtableのclass*/
	/*.ui-datepicker-calendarは、MW WP Formの日付選択の時に表示されるカレンダーdatepickerのtableのclass*/
	table:not(.no_responsive_table):not(.ui-datepicker-calendar):not(.xdsoft_calendar table) {
		border: none !important;
		border-top: #e8e8e8 solid 1px !important;
	}


	/*あえて幅をせまく調整したテーブルでも、スマホでは横幅100%にする*/
	table.table_90per,
	table.table_80per,
	table.table_70per,
	table.table_60per,
	table.table_50per,
	table.table_40per,
	table.table_30per,
	table.table_20per,
	table.table_10per {
		width: 100% !important;
	}
	table:not(.no_responsive_table):not(.ui-datepicker-calendar):not(.xdsoft_calendar table) tr {
		display: block;
		border: none !important;
		border-bottom: #e8e8e8 solid 1px !important;
		padding:4px 0px 4px 0px;
		margin-bottom: 4px;
		width:100% !important;
	}
	table:not(.no_responsive_table):not(.ui-datepicker-calendar):not(.xdsoft_calendar table) th {
		padding: 4px 5px 0px 5px !important;
		margin-bottom: 4px !important;
		/*background-color: #EDEDE9;*/
		/*white-space: nowrap;*/
		overflow: hidden;
		display: block;
		border: none !important;
		width:100% !important;
		box-sizing: border-box !important;
		-moz-box-sizing: border-box !important;
		-webkit-box-sizing: border-box !important;
		-ms-box-sizing: border-box !important;
		font-size: 100%;
	}
	table:not(.no_responsive_table):not(.ui-datepicker-calendar):not(.xdsoft_calendar table) td {
		border-left: none !important;
		word-wrap: break-word;
		overflow: hidden;
		display: block;
		padding: 3px 5px 3px 5px !important;
		margin-bottom: 0px !important;
		border: none !important;
		width:100% !important;
		font-size: 100%;
	}
	table:not(.no_responsive_table):not(.ui-datepicker-calendar):not(.xdsoft_calendar table) td:nth-of-type(1) {
		padding-bottom: 0px !important;
		font-size: 1.4rem;
	}
	.pb0,
	table:not(.no_responsive_table):not(.ui-datepicker-calendar):not(.xdsoft_calendar table) td.pb0{
		padding-bottom: 0px !important;
	}


	/*レスポンシブさせないテーブルのフォントはちょっと小さくする*/
	table.no_responsive_table tr{
		padding:0px 0px 0px 0px !important;
		font-size:96% !important;
		line-height:150% !important;
	}
	table.no_responsive_table th{
		padding: 8px 5px 8px 5px !important;
		font-size:86% !important;
		line-height:150% !important;
		white-space:nowrap !important;
	}
	table.no_responsive_table td{
		padding: 8px 5px 8px 5px !important;
		font-size:96% !important;
		line-height:150% !important;
	}


	/*tableをスクロールありで表示させる場合、これで囲む　div*/
	.table_scroll_box{
		width: auto !important;
		overflow-x:auto !important;
	}
	.table_scroll_box table.no_responsive_table {
		width: auto;
	min-width: 100%;
	}
	.table_scroll_box table.no_responsive_table tr th,
	.table_scroll_box table.no_responsive_table tr td{
		/*white-space: nowrap !important;*/
	}


	/*改行させない*/
	.sp_nowrap,
	table tr.sp_nowrap,
	table tr th.sp_nowrap,
	table tr td.sp_nowrap,
	p.sp_nowrap,
	span.sp_nowrap{
		white-space: nowrap !important;
	}
	th img,
	td img {
		display: block;
		margin-left: auto;
		margin-right: auto;
		max-width: 480px !important;
		width: 100% !important;
		height: auto;
	}


	/*横並びの画像をスマホでも横並びのまま表示するtable　のstyle罫線無し**/table.table_img_2column {
		border: none !important;
		display: block;
		max-width: 100%;
	}
	table.table_img_2column tr {
		font-size:96% !important;
		line-height:150% !important;
		border: none !important;
	}
	table.table_img_2column th {
		font-size:96% !important;
		line-height:150% !important;
		white-space:normal !important;
		border: none !important;
	}
	table.table_img_2column td {
		font-size:96% !important;
		line-height:150% !important;
		border: none !important;
	}
	table.table_img_2column img{
		margin-bottom: 0px !important;
	}
	table.table_2column {
		margin-bottom: 0.5rem;
		border-top: #dadada solid 1px;
		border-left: #dadada solid 1px;
		width: 100% !important;
		float: none !important;
		margin-right: 0% !important;
	}
	table.table_4column {
		margin-bottom: 0.5rem;
		border-top: #dadada solid 1px;
		border-left: #dadada solid 1px;
		width: 100% !important;
		float: none !important;
		margin-right: 0% !important;
	}


	/*スマホレスポンシブ対応のテーブル*/
	table.sp_responsive_table tr,
	table.sp_responsive_table th,
	table.sp_responsive_table td {
		display: block;
		width: 100%;
	}
	table.sp_responsive_table tr{
		margin-bottom: 3rem;
	}
	table.sp_responsive_table td {
		text-align: left;
	}
	table.sp_responsive_table .sp_only {
		display:inline-block !important;
	}


	/*スマホのみ、tr（の上辺）に罫線を追加するスタイル*/
	.tr_line_solid_sponly {
		border-top: #dadada solid 1px !important;
	}
	.tr_line_dotted_sponly {
		border-top: #dadada dotted 1px !important;
	}


	/*桁数を指定して揃える　半角で5文字分*/
	span.digit5{
		display:inline;
		width:auto !important;
		text-align: left;
	}


	/*桁数を指定して揃える　半角で6文字分*/
	span.digit6{
		display:inline;
		width:auto !important;
		text-align: left;
	}


	/*一番上の項目行を左の列に可変テーブル（「no_responsive_table」と併記）*/
	table.td_change_table {
		display: block;
		width: 100%;
		border-top: #DBD8CC solid 1px;
		border-left: #DBD8CC solid 0px;
		margin-bottom: 10px !important;
	}
	table.td_change_table.w_auto{
		width: auto;
	}
 	
	table.td_change_table thead {
	  	display: none;
	}
	table.td_change_table tbody {
	  	display: block;
	}
	table.td_change_table tbody tr {
		display: block;
		position: relative;
		width: 100%;
		padding: 0px !important;
		margin-bottom: 5px;
		
		border-top: #DBD8CC solid 1px !important;
		border-left: #DBD8CC solid 1px !important;
		border-bottom: #DBD8CC solid 0px !important;
		
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	table.td_change_table tbody tr:first-Child {
		border-top: #DBD8CC solid 0px !important;
	}
	table.td_change_table > tbody > tr > th,
	table.td_change_table > tbody > tr > td {
	  	display: flex;
	  	overflow: hidden;
	  	
	  	padding: 0px 0px 0px 0px !important;
	  	border-right: #DBD8CC solid 0px !important;
	  	
	  	-webkit-box-sizing: border-box;
	  	-moz-box-sizing: border-box;
	  	box-sizing: border-box;
	  	font-size: 1.4rem !important;
	}
	table.td_change_table tbody tr th:before,
	table.td_change_table tbody tr td:before {
		display: block;
	  	width: 24%;
	  	content: attr(label);
	  	float: left;
	  	line-height: 140%;
	  	text-align: center;
	  	
	  	padding: 6px 10px 6px 10px !important;
	  	border-right: #DBD8CC solid 1px !important;
	  	
	  	-webkit-box-sizing: border-box;
	  	-moz-box-sizing: border-box;
	  	box-sizing: border-box;
	  	
	}
	table.td_change_table tbody tr th,
	table.td_change_table tbody tr th p{
	}


	/*左の列が不要な場合はtd、またはtdに「no_change」を付ける*/
	table.td_change_table tbody tr th.no_change:before,
	table.td_change_table tbody tr td.no_change:before {
		content: none;
	}
	table.td_change_table tbody tr th.no_change,
	table.td_change_table tbody tr td.no_change {
		padding: 6px 10px 6px 10px !important;
	}
	table.td_change_table tbody tr th .inner,
	table.td_change_table tbody tr td .inner {
		display: block;
		width: 76%;
	  	
	  	padding: 6px 10px 6px 10px !important;
		line-height: 140%;
	  	
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		
		font-size: 1.5rem !important;
	}
	table.td_change_table tbody tr th {}
	table.td_change_table tbody tr th p,
	table.td_change_table tbody tr td p{
		line-height: 140%;
	}


	/* ---------- 記事内のテーブル設定（レスポンシブさせない） ---------- */
	/*tableをスクロールありで表示させる場合、これで囲む　div*/
	.table_scroll_box{
		width: auto !important;
		overflow-x:scroll !important;
	}
	.table_scroll_box table {
		margin-bottom: 0.5rem;
		/*
		border-top: #dadada solid 1px !important;
		border-left: #dadada solid 1px !important;
		*/
	}


	/*tableタグにこのclassが指定されているtableの中に入れ子になっているtableから罫線を取る*/
	.table_scroll_box table.td_in_table td table,
	.table_scroll_box table.td_in_table td table th,
	.table_scroll_box table.td_in_table td table tr,
	.table_scroll_box table.td_in_table td table td{
		border: none !important;
		padding: 0px;
	}
	.table_scroll_box table.td_in_table th{
		width: 30% !important;
		padding:6px 6px 6px 6px !important;
	}
	.table_scroll_box table.td_in_table td{
		padding:6px 6px 6px 6px !important;
	}
	.table_scroll_box table.td_in_table td table{
		width: 100% !important;
	}
	.table_scroll_box table.td_in_table td table tr{
		border: none !important;
		padding:0px 0px 0px 0px;
		width:100% !important;
	}
	.table_scroll_box table.td_in_table td table td{
		border-left: none !important;
		word-wrap: break-word;
		overflow: hidden;
		display: block;
		padding: 0px 0px 0px 0px !important;
		border: none !important;
		width:100% !important;
	}
	table.noline,
	table.noline tr,
	table.noline td,
	table.noline th,
	table:not(.no_responsive_table):not(.ui-datepicker-calendar):not(.xdsoft_calendar table).noline,
	table:not(.no_responsive_table):not(.ui-datepicker-calendar):not(.xdsoft_calendar table).noline tr,
	table:not(.no_responsive_table):not(.ui-datepicker-calendar):not(.xdsoft_calendar table).noline td,
	table:not(.no_responsive_table):not(.ui-datepicker-calendar):not(.xdsoft_calendar table).noline th{
		border: 0px !important;
		border-top: #e8e8e8 solid 0px !important;
		border-bottom: #e8e8e8 solid 0px !important;
	}


	/* -------------------- 水平線画像 -------------------- */
	/* ---------- 記事内のグレー罫線の囲み（div） ---------- */
	
	.box_gray,
	.box_green,
	.box_emerald,
	.box_white,
	.box_gray_compact,
	.box_green_compact,
	.box_white_compact,
	.box_gray5,
	.box_green5,
	.box_green3,
	.box_gray10,
	.box_green10,
	.box_gray_beige5,
	.box_bg_gray,
	.box_bg_blue,
	.box_bg_white
 	{
		padding:20px 20px 20px 20px !important;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-ms-box-sizing: border-box;
	}


	/*お問い合わせ先フォーマット（「box_gray_beige5」と同じ）*/
	.contact_info_box {
		padding:20px 20px 20px 20px !important;
		margin:10px 0px 25px 0px;
		border: solid 5px #F3EFE9;
	}
	.box_gray img,
	.box_green img,
	.box_emerald img,
	.box_white img,
	.box_gray_compact img,
	.box_green_compact img,
	.box_white_compact img,
	.box_gray5 img,
	.box_green5 img,
	.box_green3 img,
	.box_gray10 img,
	.box_green10 img,
	.box_gray_beige5 img {
		width: 100%;
		height: auto !important;
	}


	/* 背景が薄いグレーのボックス */
	
	.box_bg_gray{
		padding:15px 15px 15px 15px;
	}
	.box_bg_beige{
		padding:15px 15px 15px 15px;
	}


	/*「box_gray_XX」と併記して利用*/
	/*inline-blockを追加する*/
	.display_ib{
		overflow: hidden;
		display: inline-block
	}

	/*スマホではblock*/
	.sp_display_b{
		display: block !important;
	}


	/* ---------- 記事内のol ---------- */ol {}ol > li {}ol > li > ul {}ol > li > ul li {}/* ---------- 記事内のul ---------- */
 	ul.float{}
	
 	ul.float li {}


	/* ---------- 記事内のア、イ、ウ…のli ---------- */
	/* ---------- 記事内の注釈 ---------- */
	/* ---------- div内で2列にならべるdiv ---------- */
	/*2列全体　div*/
	.text_box_2column{
		display: block;
		overflow: hidden;
		position: relative;
	}
	.text_box_2column h2,
	.text_box_2column h3{
		display: inline-block;
		margin: 0px 0 10px 0;
	}
	.text_box_2column p{
	}
	.text_box_2column .column_inner{
		display: block;
		overflow: hidden;
		position: relative;
		width: 100% !important;
		margin-right: 0px !important;
		margin-bottom: 10px;
		float: none;
	}
	
	/*上下入れ替え*/
	.text_box_2column.sp_flip{
		display: flex;
	}
	
	.text_box_2column.sp_flip .column_inner:nth-child(1){
		display: inline-block;
		order: 2;
	}
	
	.text_box_2column.sp_flip .column_inner:nth-child(2){
		display: inline-block;
		order: 1;
	}


	/* ---------- div内で3列にならべるdiv ---------- */
	/*3列全体　div*/
	.text_box_3column,
	.text_box_3column_narrow,
	.text_box_3column_widthauto{
		display: block;
		overflow: hidden;
		position: relative;
	}
	.text_box_3column h2,
	.text_box_3column h3{
		display: inline-block;
		margin: 0px 0 10px 0;
	}
	.text_box_3column p{
	}
	.text_box_3column_left,/*左*/
	.text_box_3column_center,/*中央*/
	.text_box_3column_right,/*右*/
	.text_box_3column .column_inner,
	.text_box_3column_widthauto .column_inner{
		display: block;
		overflow: hidden;
		position: relative;
		width: 100% !important;
		margin-right: 0px !important;
		margin-bottom: 10px;
		float: none;
	}
	.text_box_3column_narrow .column_inner{
		width: 100%;
		margin-right: 0.0%;
	}
	.text_box_3column_widthauto .column_inner{
		width: auto;
		margin-right: 0%;
	}


	/* ---------- div内で4列にならべるdiv ---------- */
	/*4列全体　div*/
	.text_box_4column{
		display: block;
		overflow: hidden;
		position: relative;
	}
	.text_box_4column h2,
	.text_box_4column h3{
		display: block;
		margin: 0px 0px 10px 0px !important;
		float:none;
		clear: both;
	}
	.text_box_4column p{
	}
	.text_box_4column_1,
	.text_box_4column_2,
	.text_box_4column_3,
	.text_box_4column_4,
	.text_box_4column .column_inner{
		display: block;
		overflow: hidden;
		position: relative;
		width: 100% !important;
		margin-right: 0px !important;
		margin-bottom: 10px;
		float: none;
	}


	/*2カラム、3カラム、4カラムの中に画像を配置した場合はimgにmargin-bottomを強制的に追加*/
	/*また、trimやtrim_wideで囲まれている場合も同様*/
	.text_box_2column_left img,
	.text_box_2column_right img,
	.text_box_3column_left img,
	.text_box_3column_center img,
	.text_box_3column_right img,
	.text_box_4column_1 img,
	.text_box_4column_2 img,
	.text_box_4column_3 img,
	.text_box_4column_4 img,.text_box_2column .column_inner img,
	.text_box_3column .column_inner img,
	.text_box_4column .column_inner img,.text_box_2column_left p.trim,
	.text_box_2column_right p.trim,
	.text_box_3column_left p.trim,
	.text_box_3column_center p.trim,
	.text_box_3column_right p.trim,
	.text_box_4column_1 p.trim,
	.text_box_4column_2 p.trim,
	.text_box_4column_3 p.trim,
	.text_box_4column_4 p.trim,.text_box_2column .column_inner p.trim,
	.text_box_3column .column_inner p.trim,
	.text_box_4column .column_inner p.trim,.text_box_2column_left p.trim_wide,
	.text_box_2column_right p.trim_wide,
	.text_box_3column_left p.trim_wide,
	.text_box_3column_center p.trim_wide,
	.text_box_3column_right p.trim_wide,
	.text_box_4column_1 p.trim_wide,
	.text_box_4column_2 p.trim_wide,
	.text_box_4column_3 p.trim_wide,
	.text_box_4column_4 p.trim_wide.text_box_2column .column_inner p.trim_wide,
	.text_box_3column .column_inner p.trim_wide,
	.text_box_4column .column_inner p.trim_wide{
		margin-bottom: 10px;
	}


	/* ----------リンクとダウンロードファイルのアイコン---------- */
	/*aタグ用*/
	/*基本リンク*/
	.icon_link:after{}.icon_link:hover {
		text-decoration: underline
	}


	/*blank*/
	.icon_blank:after{}.icon_blank:hover {
		text-decoration: underline
	}


	/*mail*/
	.icon_mail:after {}/*pdf*/
	.icon_pdf:after {}/*tel*/
	.icon_tel:after {}/*search*/
	.icon_search:after {}/*picture_zoom*/
	.icon_picture_zoom:after {}


	/*トップページ用「詳しく見る」を囲んだdiv*/
	.link_box{
		display: block;
		position: relative;
		margin-top: 20px;
		margin-bottom: 20px;
		text-align: center;
	}


	/*基本ボタン（詳しく見る）*/
	.button,
	.button_white{
		min-width: auto;
		font-size: 1.4rem;
		padding: 9px 3.5vw 9px 3.5vw;
		width: auto;
	}
	.button:hover{
		text-decoration: none !important;
	}
	
	.button_green_big{
		font-size: 1.6rem;
		line-height: 130%;
		font-weight: 600;
		font-weight: normal;
		color: #ffffff !important;
		background: url("../img/parts_bg_1.jpg") center center;
		background-size: 320px 320px;
		padding: 12px 22px 12px 22px;
		min-width: 240px;
	}
	
	/*右に緑丸の矢印がつくリンク*/
	.icon_link_aftermark{
		display: inline-block;
		position: relative;
		color: #74d728;
		text-decoration: none;
		padding-right: 48px;
		font-weight: 600;
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.icon_link_aftermark:before {
		content: "";
		display: block;
		position: absolute;
		background-color: #74d728;
		width: 28px;
		height: 28px;
		top: -4px;
		right: 0px;
		vertical-align: middle;
		line-height: normal;
		border-radius: 100px;
		-webkit-border-radius: 100px;
		-moz-border-radius: 100px;
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.icon_link_aftermark:after {
		font-family: "Material Symbols Outlined";
		content: "\e5e1";
		display: inline-flex; /* 子要素をflexboxで揃える */
		flex-direction: column; /* 子要素をflexboxにより縦並びに揃える */
		justify-content: center; /* 子要素をflexboxにより上下中央に配置する */
		align-items: center;  /* 子要素をflexboxにより左右中央に配置する*/
		position: absolute;
		color: #ffffff;
		width: 28px;
		height: 28px;
		font-size: 16px;
		top: -4px;
		right: 0px;
		margin-right: -2px;
		vertical-align: middle;
		line-height: normal;
		border-radius: 100px;
		-webkit-border-radius: 100px;
		-moz-border-radius: 100px;
	}
		
	
	.icon_link_aftermark:hover{
		color: color(display-p3 0.325 0.71 0.204);
	}
	
	.icon_link_aftermark:hover:before {
		background-color: color(display-p3 0.325 0.71 0.204);
	}
	
	
	.sp_only {
		display:inline-block !important;
	}
	.pc_only {
		display: none !important;
	}
	.tablet_only {
		display: none !important;
	}
	.print_only {
		display:none;
	}


	/*PCの「p」だけマージンボトム20、スマホは0*/
	.pc_only_mb20 {
		margin-bottom:0px !important;
	}
	
	
	/*トップページ以外のコンテンツ欄*/
	.contents_all{
		margin-top: 0px;/*ヘッダーの高さ分*/
	}
	
	/* --------------------
	スマホ
	ページ内アンカーの飛び先
	
	-------------------- */
	
	.anchor{
		margin-top: -46px;
		padding-top: 46px;
	}


	/*--------------------------------
	スマホ
	トップページ専用スタイル
	
	--------------------------------*/
	
	/*--------------- トップページのみのスタイル（メインビジュアル） ---------------*/
	
	/*section*/
	.mainvisual_area{
		position: relative;
		padding-top: 20px;
		padding-bottom: 20px;
		background: url("../img/bg_green.jpg") center top;
		background-size: 1600px 716px;
		z-index: 0;
	}
	
	.mainvisual_area:after{
		content:none;

	}
	
	.mainvisual_box{
		display:block;
		letter-spacing: normal;/* 文字間を詰めて隙間を削除する */
		position: relative;
		width: 100%;
		max-width: 1600px;
		padding-top: 20px;
		margin: 0 auto;
		letter-spacing: normal;
		
		background: url("../img/bg_object_1.png"),url("../img/bg_object_1_white.png");
		background-repeat: no-repeat,no-repeat;
		background-position: left -20px top 20px, right -20px bottom -20px;
		background-size: 108px 95px,79px 76px;
	}
	
	
	.mainvisual_catchcopy_box{
		display: inline-block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
		text-align: center;
		width: 100%;
		padding-top: 0%;
		padding-left: 0px;
		letter-spacing: normal;
		margin-bottom: 20px;
	}
	
	
	.mainvisual_catchcopy{
		display: inline-block;
		text-align: left;
		font-size: 2rem;
		font-weight: 700;
		line-height: 1.6;
		margin-top: 0rem;
		letter-spacing: 0.2em;
		-webkit-writing-mode:horizontal-tb;
		-ms-writing-mode:lr-tb;
		writing-mode:horizontal-tb;
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.mainvisual_catchcopy span{
		color:color(display-p3 0.306 0.714 0.2);
		font-size: 2.4rem;
	}
	
	.mainvisual_catchcopy .br1{
		display: none;
	}
	
	
	
	.main_visual/*「.slick-slider」*/
	{
		display: flex; /* 追加 */
		align-items: center; /* 追加 */
		overflow: hidden;
		width: 100%;
		padding: 20px 20px 10px 20px;
	}
	
	.slick-list{
		overflow: hidden;
		border-radius: 20px;
		-webkit-border-radius: 20px;
		-moz-border-radius: 20px;
	}
	
	.slick-list{
		
	}
	
	.slick-slide{
	
	}
	
	.main_visual_1box{
		width: 100%;
		aspect-ratio: 750 / 460;/*縦横比固定*/
	}
	
	
	.main_visual_1box img{
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		width: 106%;
		height: auto;	
	}
	
	
	/*フェード切り替え時ズーム演出*/
	@keyframes fadezoom {
		0% {
		 transform: scale(1.06);
		}
		100% {
		 transform: scale(1.02); /* 拡大率1.1 */
		}
	}
	.add-animation {
		animation: fadezoom 5s 0s forwards;
	}
	
	
	.visual_navi_box{
		display: none;
		/*
		display: block;
		position: absolute;
		bottom: 0;
		left: 0px;
		right: 0px;
		*/
	}
	
	.mainvisual_catchcopy_e_box{
		display: inline-block;
		position: relative;
		top:0px;
		right: 0px;
		padding:0px 20px 0px 20px;
		text-align: left;
		vertical-align: top;
	}
	
	.mainvisual_catchcopy_e1{
		display: block;
		font-family: "Sen", sans-serif;
		color: #ffffff;
		font-size: 1.4rem;
		font-weight: 100;
		line-height: 120%;
		vertical-align: top;
		letter-spacing: 0.1em;
	}
	
	.mainvisual_catchcopy_e2{
		display: block;
		font-family: "Sen", sans-serif;
		color: #ffffff;
		font-size: 1.4rem;
		font-weight: 100;
		text-align: left;
		line-height: 120%;
		vertical-align: top;
		-webkit-writing-mode:horizontal-tb;
		-ms-writing-mode:lr-tb;
		writing-mode:horizontal-tb;
			letter-spacing: 0.1em;
	}
	

	
	
	
	/*--------------- トップページ構成要素の共通パーツ ---------------*/
	
	.title_box{
		display: inline-block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
		margin-bottom: 40px;
	}
	
	.section_title_e{
		display: inline-block;
		position: relative;
		font-family: "Sen", sans-serif;
		font-size: 2.8rem;
		font-weight: 400;
		line-height: 120%;
		margin-bottom: 5px;
		letter-spacing: 0rem;
		color: #00b900;
	}
	
	.section_title{
		display: block;
		position: relative;
		font-family: "Sen", sans-serif;
		font-size: 1.4rem;
		font-weight: 600;
	}
	
	/*--------------- トップページの導入部分 ---------------*/
	
	.introduction{
		display: block;
		position: relative;
		margin: 0 auto;
		margin-bottom: 0px;
		padding: 40px 20px 60px 20px;
		z-index: 0;
	}
	
	.introduction:before{
		content:"";
		display: block;
		position: absolute;
		top:360px;
		right: -10%;
		width: 53%;
		aspect-ratio: 1600 / 1160;/*縦横比固定*/
		background: url("../img/bg_object_3.jpg") no-repeat right top;
		background-size: contain;
	}
	
	.introduction .section_inner{
		display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
		letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
		position: relative;
		margin: 0 auto;
		max-width: 1180px;
		margin-top: 0px;
		right: auto;
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.introduction .section_inner .section_inner_left,
	.introduction .section_inner .section_inner_right{
		display: inline-block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
	}
	
	.introduction .section_inner .section_inner_left{

		display: flex;
		flex-direction: column; /* 子要素をflexboxにより縦並びに揃える */
		justify-content: center; /* 子要素をflexboxにより上下中央に配置する */
		align-items: center;  /* 子要素をflexboxにより左右中央に配置する*/
		width: 100%;
		padding-right: 0px;
		padding-bottom: 20px;
	}
	
	.introduction .section_inner .section_inner_right{
		width: 100%;
		padding-left: 0vw;
		padding-top: 0px;
	}
	
	.introduction_img{
		display: block;
		position: relative;
		width: 100%;
		margin-right: 0;
		max-width: 200px;
	}
	
	.introduction_catchcopy{
		font-size: 1.6rem;
		line-height: 180%;
		font-weight: 600;
		letter-spacing: 0rem;
	}
	
	
	
	
	/*--------------- トップページの「TOPICS」 ---------------*/
	
	.frontpage_topics{
		display: block;
		position: relative;
		margin: 0 auto;
		margin-bottom: 40px;
		padding: 0px 20px 0px 20px;
		background: url("../img/bg_object_2.jpg") no-repeat left 40px;
		background-size: 22% auto;
		z-index: 1;
	}
	
	.frontpage_topics .section_inner{
		display: block;
		position: relative;
		margin: 0 auto;
		max-width: 1280px;
		z-index: 1;
	}
	
	.frontpage_topics .title_box{
		margin-bottom: 10px;
	}
	
	.frontpage_topics .section_title{
	
	}
	
	.frontpage_topics_link_box{
		display: block;
		position: relative;
		top:auto;
		right: 0;
		z-index: 2;
	}
	
	.frontpage_topics_content_box{
		display: block;
		position: relative;
		max-width: 1180px;
		padding-left: 0%;
	}
	
	.frontpage_topics_list_box {
		display: block;
		position: relative;
		margin: 0 auto;
	}
	
	.frontpage_topics_list {
		display: -webkit-box;
		display: -moz-box;
		display: -webkit-flexbox;
		display: -moz-flexbox;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-flex;
		display: flex;
		-webkit-box-lines: multiple;
		-moz-box-lines: multiple;
		-webkit-flex-wrap: wrap;
		-moz-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		letter-spacing: -.40em;
	}
	
	.frontpage_topics_list li {
		display: inline-block;
		position: relative;
		letter-spacing: normal;
		vertical-align: top;
		width: 100%;
		border-bottom: solid 1px #00b900;
		padding-top: 2.2rem;
		padding-bottom: 1.6rem;
	}
	
	.frontpage_topics_list li:first-of-type {
		border-top: solid 1px #00b900;
	}
	
	.frontpage_topics_list .title {
		font-size: 1.6rem;
		font-weight: 600;
		color: #000000;
		vertical-align: middle;
		line-height: 160%;
		padding-bottom: 5px;
	}
	
	.frontpage_topics_list .date {
		display: inline-block;
		position: relative;
		font-family: "Sen", sans-serif;
		font-weight: 500;
		font-size: 2.0rem;
		color: #00b900;
		margin-right: 6px;
		margin-bottom: 15px;
		vertical-align: middle;
		line-height: 100%;
	}
	
	
	.frontpage_topics_list .genre {
		display: inline-block;
		position: relative;
		text-align: center;
		font-size: 1.40rem;
		line-height: 100%;
		font-weight: normal;
		color: #ffffff !important;
		background-color: #00b900 !important;
		padding: 6px 1.5rem 6px 1.5rem;
		min-width: 86px;
		text-decoration: none;
		vertical-align: top;
		top: -4px;
		border-radius: 100px;
		-webkit-border-radius: 100px;
		-moz-border-radius: 100px;
	}
	
	/*お知らせ 濃いめの緑*/
	.genre_01{
		background: url("../img/parts_bg_2.jpg") no-repeat center center;
		background-size: 320px 320px;
	}
	
	/*ブログ　薄めの緑*/
	.genre_02{
		background: url("../img/parts_bg_1.jpg") no-repeat center center;
		background-size: 320px 320px;
	}
	
	/*イベント　水色*/
	.genre_03{
		background: url("../img/parts_bg_3.jpg") no-repeat center center;
		background-size: 320px 320px;
	}
	
	/*募集　紫*/
	.genre_04{
		background: url("../img/parts_bg_4.jpg") no-repeat center center;
		background-size: 320px 320px;
	}
	
	/*重要　赤*/
	.genre_05{
		background: url("../img/parts_bg_5.jpg") no-repeat center center;
		background-size: 320px 320px;
	}
	
	/*レポート　オレンジ*/
	.genre_06{
		background: url("../img/parts_bg_6.jpg") no-repeat center center;
		background-size: 320px 320px;
	}
	
	/*予備*/
	.genre_07{}
	
	/*予備*/
	.genre_08{}
	
	/*予備*/
	.genre_09{}
	
	/*予備*/
	.genre_10{}
	
	.frontpage_topics .link_box{
		display: inline-block;
		position: absolute;
		top:-106px;
		right: 0px;
		
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.frontpage_topics_list li a{
	}
	
	.frontpage_topics_list li a:hover{
		text-decoration: underline;
	}
	
	
	
	
	/*--------------- トップページの「主な心理療法活動」 ---------------*/
	
	.frontpage_counseling{
		display: block;
		position: relative;
		margin: 0 auto;
		padding: 50px 20px 20px 20px;
		background: url("../img/bg_green.jpg") center top;
		background-size: 800px 358px;
	}
	
	.frontpage_counseling:after{
		content:"";
		display: block;
		position: absolute;
		top:0;
		left: 0;
		right: 0;
		aspect-ratio: 1600 / 70;/*縦横比固定*/
		background: url("../img/bg_wave_top_white.svg") no-repeat center top;
		background-size: contain;
	}
	
	.frontpage_counseling .title_box{
		margin-bottom: 40px;
	}
	
	.frontpage_counseling_content_3column{
		display:block;
		max-width: 1230px;
		padding-left: 0px;
		padding-right: 0px;
		margin: 0 auto;
		letter-spacing: normal;
	}
	
	.frontpage_counseling_content_3column .column_inner{
		display: block;
		position: relative;
		letter-spacing: normal;
		width: 100%;
		margin-right: 0%;
		margin-bottom: 50px;
		background-color: #ffffff;
		
		border-radius: 20px;
		-webkit-border-radius: 20px;
		-moz-border-radius: 20px;
	}
	
	.frontpage_counseling_content_3column .column_inner:nth-of-type(3){
		margin-right: 0%;
		margin-bottom: 0px;
	}
	
	.frontpage_counseling_3column_1box_title{
		display: inline-block;
		position: absolute;
		background-color: #ffffff;
		top: -25px;
		left: 0px;
		padding: 12px 20px 12px 20px;
		font-size: 1.8rem;
		font-weight: 600;
		text-align: center;
		line-height: 110%;
		min-height: auto;
		vertical-align: middle;
		border-radius: 14px;
		-webkit-border-radius: 14px;
		-moz-border-radius: 14px;
		z-index: 1;
	}
	
	.frontpage_counseling_3column_1box_title span{
		font-size: 1.8rem;
	}
	
	.frontpage_counseling_3column_1box_title br{
		display: none !important;
	}
	
	.frontpage_counseling_3column_1box_img{
		width: 100%;
		overflow: hidden;
		border-radius: 20px;
		-webkit-border-radius: 20px;
		-moz-border-radius: 20px;
	}
	
	.frontpage_counseling_3column_1box_text{
		width: calc(100%);
		padding: 20px 20px 70px 20px;
	}
	
	.frontpage_counseling_3column_1box_link{
		display: block;
		position: absolute;
		right: 0;
		bottom: 0;
		text-align: right;
		padding: 10px 20px 30px 20px;
	}
	
	
	/*--------------- トップページの「企業・各種団体様へのご案内」 ---------------*/
	
	.frontpage_groups{
		display: block;
		position: relative;
		margin: 0 auto;
		padding: 40px 20px 40px 20px;
		background: 
			url("../img/bg_object_4.jpg") no-repeat,
			url("../img/bg_object_5.jpg") no-repeat,
			url("../img/bg_object_6.jpg") no-repeat;
		background-size: 
			103px auto,/*16% auto,*/
			138px auto,/*15% auto,*/
			220px auto;/*30% auto;*/
		background-position: 
			0px 40px,
			right 0% top 29%,
			left bottom;
	}
	
	.frontpage_groups .title_box{
		margin-bottom: 20px;
	}
	
	.frontpage_groups_introduction_box{
		padding-left: 0px;
		padding-right: 0px;
		margin-bottom: 20px;
	}
	
	.frontpage_groups_introduction_text{
		font-size: 1.7rem;
	}
	
	.frontpage_groups_content_3column{
		padding-left: 0px;
		padding-right: 0px;
		margin-bottom: 20px;
	}
	
	.frontpage_groups_content_3column .column_inner{
		display: block;
		position: relative;
		letter-spacing: normal;
		text-align: center;
		width: 100%;
		margin-right: 0%;
		margin-bottom: 10px;
		padding: 20px 15px 20px 15px;
		border: solid 1px #00b900;
		overflow: hidden;
		border-radius: 20px;
		-webkit-border-radius: 20px;
		-moz-border-radius: 20px;
	}
	
	.frontpage_groups_3column_1box_title{
		font-size: 1.8rem;
		line-height: 130%;
		font-weight: 600;
		color: #00b900;
		margin-bottom: 15px;
	}
	
	.frontpage_groups_3column_1box_img{
		text-align: center;
	}
	
	.frontpage_groups_3column_1box_img img{
		max-width: 220px;
	}
	
	.button_green_big{
		
	}
	
	
	
	/*--------------------------------
	スマホ
	トップページ以外のページの共通パーツ
	
	--------------------------------*/
	
	.contents_main{
		display: block;
		position: relative;
		padding-left: 20px;
		padding-right: 20px;
	}
	
	.contents_main:before {
		content: "";
		display: block;
		position: absolute;
		top: 0.5%;
		right: -10%;
		width: 60%;
		aspect-ratio: 1600 / 1160;
		background: url(../img/bg_object_3.jpg) no-repeat right top;
		background-size: contain;
	}
	
	.page_title_box{
		display: block;
		position: relative;
		padding-top: 20px;
		padding-bottom: 30px;
		padding-left: 20px;
		padding-right: 20px;
		margin-left: -20px;
		margin-right: -20px;
		margin-bottom: 40px;
		background-image: linear-gradient(90deg, #f7f6f3, #f7f6f3 16%, transparent);

		font-weight: 600;
		line-height: 120%;
	}
	
	.page_title_e{
		display: block;
		position: relative;
		font-family: "Sen", sans-serif;
		font-size: 1.4rem;
		max-width: 1480px;
		font-weight: 400;
		color: #52b532;
		margin: 0 auto;
		margin-bottom: 1rem
	}
	
	/*h1*/
	.page_title{
		display: block;
		position: relative;
		font-family: "dnp-shuei-mgothic-std", sans-serif;
		font-size: 2.1rem;
		max-width: 1480px;
		line-height: 100%;
		margin: 0 auto;
		
	}
	
	.page_title span{
		display: inline-block;
		position: relative;
		border-bottom: dotted 2px #52b532;
		padding-bottom: 1rem;
	}
	
	.page_subtitle{
		padding-top: 20px;
		font-family: "dnp-shuei-mgothic-std", sans-serif;
		font-size: 1.7rem;
		line-height: 140%;
	}
	
	
	.contents_main_inner{
		display: block;
		position: relative;
		margin: 0 auto;
	}
	
	.section_box{
		padding-bottom: 30px;
	}
	
	.contents_box{
		max-width: 1340px;
		margin: 0 auto;
	}
	
	.contents_section_title_e{
		font-family: "Sen", sans-serif;
		font-size: 1.4rem;
		color: #00b900;
	}
	
	.contents_section_title{
		font-size: 2rem;
		font-weight: 600;
		margin-bottom: 20px;
	}
	
	/*h3*/
	.title_bg_green{
		display: block;
		position: relative;
		text-align: left;
		font-size: 1.9rem;
		line-height: 130%;
		font-weight: 600;
		color: #ffffff !important;
		background: url(../img/parts_bg_1.jpg) center center;
		background-size: 320px 320px;
		padding: 10px 15px 10px 15px;
		margin-bottom: 20px;
		text-decoration: none;
		pointer-events: visible;
		overflow: hidden;
		border-radius: 14px;
		-webkit-border-radius: 14px;
		-moz-border-radius: 14px;
	}
	
	.padding_lr25{
		padding-left: 15px;
		padding-right: 15px;
	}
	
	.top_dotline_green{
		display: inline-block;
		position: relative;
		font-size: 1.9rem;
		font-weight: 600;
		margin-bottom: 20px;
	}
	
	.top_dotline_green:before{
		content:"";
		display: inline-block;
		position: relative;
		padding-top: 14px;
		width: 100%;
		background-image: radial-gradient(circle, #00b900 2.5px, transparent 2.5px);
		background-position: left -3px top;
		background-repeat: repeat-x;
		background-size: 11px 5px;
	}
	
	/*--------------------------------
	スマホ
	「個人面接」ページ　ディレクトリ：private/
	
	--------------------------------*/
	
	.private_introduction{
		
	}
	
	.private_introduction .text_box_2column{
		margin: 0 auto;
		max-width: 1280px;
	}
	
	.private_introduction .text_box_2column .column_inner{
		overflow: visible !important;
	}
	
	.private_introduction .text_box_2column .column_inner:nth-of-type(1){
		margin-right: 0%;
	}

	.private_catchcopy{
		font-size: 1.8rem;
		color: #52b532;
		line-height: 180%;
		letter-spacing: 1.2px;
	}
	
	/*img*/
	.private_introduction_img{
		margin-top: 0px;
		margin-left: 0px;
		text-align: center;
		width: 100%;
		max-width: 300px;
		min-width: auto;
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	
	.private_contents{
		display: block;
		position: relative;
		margin: 0 auto;
		margin-left: -20px;
		margin-right: -20px;
		padding: 60px 20px 50px 20px;
		background: url("../img/bg_litegreen.jpg") center top;
		background-size: 800px 358px;
	}
	
	.private_contents:after{
		content:"";
		display: block;
		position: absolute;
		top:0;
		left: 0;
		right: 0;
		aspect-ratio: 1600 / 70;/*縦横比固定*/
		background: url("../img/bg_wave_top_white.svg") no-repeat center top;
		background-size: 100% auto;
	}
	
	/*導入部分から下（背景がうすいグリーン）の欄*/
	.private_contents{
		
	}
	
	.private_fee_table tr th,
	.private_fee_table tr td{
		padding-left: 15px !important;
		padding-right: 15px !important;
		font-weight: 600;
		font-size: 1.8rem;
	}
	
	/*--------------------------------
	スマホ
	「傾聴講座」ページ　ディレクトリ：listening/
	
	--------------------------------*/
	
	.listening_introduction{
		
	}
	
	.listening_introduction .text_box_2column{
		margin: 0 auto;
		max-width: 1280px;
	}
	
	.listening_introduction .text_box_2column .column_inner{
		overflow: visible !important;
	}
	
	.listening_introduction .text_box_2column .column_inner:nth-of-type(1){
		margin-right: 0%;
	}
	
	.listening_title_img{
		
	}
	
	.listening_title_img img{
		max-width: 300px;
	}
	
	.listening_catchcopy{
		font-size: 1.8rem;
		color: #52b532;
		line-height: 180%;
		letter-spacing: 1.2px;
	}
	
	.listening_text{
		font-size: 1.6rem;
		letter-spacing: 1px;
		font-weight: 600;
		line-height: 200%;
	}
	
	/*img*/
	.listening_introduction_img{
		margin-top: 0px;
		margin-left: 0px;
		text-align: center;
		width: 100%;
		max-width: 300px;
		min-width: auto;
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	
	.listening_contents{
		display: block;
		position: relative;
		margin: 0 auto;
		margin-left: -20px;
		margin-right: -20px;
		padding: 60px 20px 50px 20px;
		background: url("../img/bg_litegreen.jpg") center top;
		background-size: 800px 358px;
	}
	
	.listening_contents:after{
		content:"";
		display: block;
		position: absolute;
		top:0;
		left: 0;
		right: 0;
		aspect-ratio: 1600 / 70;/*縦横比固定*/
		background: url("../img/bg_wave_top_white.svg") no-repeat center top;
		background-size: 100% auto;
	}
	
	/*導入部分から下（背景がうすいグリーン）の欄*/
	.listening_contents{
		
	}
	
	/*--------------------------------
	スマホ
	「コモンルーム《ひだまり》」ページ　ディレクトリ：common_room/
	
	--------------------------------*/
	
	.common_room_introduction{
		
	}
	
	.common_room_introduction .text_box_2column{
		margin: 0 auto;
		max-width: 1280px;
	}
	
	.common_room_introduction .text_box_2column .column_inner{
		overflow: visible !important;
	}
	
	.common_room_introduction .text_box_2column .column_inner:nth-of-type(1){
		margin-right: 0%;
	}
	
	.common_room_catchcopy{
		font-size: 1.8rem;
		color: #52b532;
		line-height: 180%;
		letter-spacing: 1.2px;
	}
	
	/*img*/
	.common_room_introduction_img{
		margin-top: 0px;
		margin-left: 0px;
		text-align: center;
		width: 100%;
		max-width: 540px;
		min-width: 300px;
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	
	.common_room_contents{
		display: block;
		position: relative;
		margin: 0 auto;
		margin-left: -20px;
		margin-right: -20px;
		padding: 60px 20px 50px 20px;
		background: url("../img/bg_litegreen.jpg") center top;
		background-size: 800px 358px;
	}
	
	.common_room_contents:after{
		content:"";
		display: block;
		position: absolute;
		top:0;
		left: 0;
		right: 0;
		aspect-ratio: 1600 / 70;/*縦横比固定*/
		background: url("../img/bg_wave_top_white.svg") no-repeat center top;
		background-size: 100% auto;
	}
	
	/*導入部分から下（背景がうすいグリーン）の欄*/
	.common_room_contents{
		
	}
	
	.common_room_message_orange{
		max-width: 280px;
	}
	
	/*--------------------------------
	スマホ
	「企業・各種団体様へのご案内」ページ　ディレクトリ：groups/
	
	--------------------------------*/
	
	.groups_introduction{
		
	}
	
	.groups_introduction .text_box_2column{
		margin: 0 auto;
		max-width: 1280px;
	}
	
	.groups_introduction .text_box_2column .column_inner{
		overflow: visible !important;
	}
	
	.groups_introduction .text_box_2column .column_inner:nth-of-type(1){
		margin-right: 0%;
	}
	
	.groups_catchcopy{
		font-size: 1.8rem;
		color: #52b532;
		line-height: 180%;
		letter-spacing: 1.2px;
	}
	
	/*img*/
	.groups_introduction_img{
		margin-top: 0px;
		margin-left: 0px;
		text-align: center;
		width: 100%;
		max-width: 540px;
		min-width: 300px;
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	
	.groups_contents{
		display: block;
		position: relative;
		margin: 0 auto;
		margin-left: -20px;
		margin-right: -20px;
		padding: 60px 20px 50px 20px;
		background: url("../img/bg_litegreen.jpg") center top;
		background-size: 800px 358px;
	}
	
	.groups_contents:after{
		content:"";
		display: block;
		position: absolute;
		top:0;
		left: 0;
		right: 0;
		aspect-ratio: 1600 / 70;/*縦横比固定*/
		background: url("../img/bg_wave_top_white.svg") no-repeat center top;
		background-size: 100% auto;
	}
	
	/*導入部分から下（背景がうすいグリーン）の欄*/
	.groups_contents{
		
	}
	
	/*--------------------------------
	スマホ
	「当センターについて」ページ　ディレクトリ：about/
	
	--------------------------------*/
	
	.about_introduction{
		
	}
	
	.about_introduction .text_box_2column{
		margin: 0 auto;
		max-width: 1280px;
	}
	
	.about_introduction .text_box_2column .column_inner{
		overflow: visible !important;
	}
	
	.about_introduction .text_box_2column .column_inner:nth-of-type(1){
		margin-right: 0%;
	}
	
	
	
	.about_catchcopy{
		font-size: 1.7rem;
		color: #52b532;
		line-height: 180%;
		letter-spacing: 1.2px;
	}
	
	/*img*/
	.about_introduction_img{
		margin-top: 0px;
		margin-left: 0px;
		text-align: center;
		width: 100%;
		max-width: 540px;
		min-width: 300px;
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}

	
	.about_contents{
		display: block;
		position: relative;
		margin: 0 auto;
		margin-left: -40px;
		margin-right: -40px;
		padding: 60px 40px 50px 40px;
		background: url("../img/bg_litegreen.jpg") center top;
		background-size: 800px 358px;
	}
	
	.about_contents:after{
		content:"";
		display: block;
		position: absolute;
		top:0;
		left: 0;
		right: 0;
		aspect-ratio: 1600 / 70;/*縦横比固定*/
		background: url("../img/bg_wave_top_white.svg") no-repeat center top;
		background-size: 100% auto;
	}
	
	/*導入部分から下（背景がうすいグリーン）の欄*/
	.about_contents{
		
	}
	
	.about_contents table tr td:first-of-type{
		font-weight: 600;
		color: #00b900;
	}
	
	
	/*各サービス（各事業）のダウンロードファイル欄　ul*/
	.about_link_list {
		display: -webkit-box;
		display: -moz-box;
		display: -webkit-flexbox;
		display: -moz-flexbox;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-flex;
		display: flex;
		-webkit-box-lines: multiple;
		-moz-box-lines: multiple;
		-webkit-flex-wrap: wrap;
		-moz-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
		position: relative;
	}
	
	.about_link_list li {
		display: inline-block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
		width: 100%;
		margin-right: 0%;
		margin-bottom: 0%;
		margin-bottom: 10px;
	}
	
	.about_link_list li:last-of-type {
		margin-bottom: 0px;
	}
	
	.about_link_list li:nth-of-type(2n) {
		margin-right: 0%;
	}
	
	.about_link_list li a {
		display: flex;
		position: relative;
		align-items: center;  /* 子要素をflexboxにより上下中央に配置する*/
		height: 100%;
		min-height: 70px;
		padding: 4% 16% 4% 5%;
		background-color: #fff;
		border: solid 1px #ccc;
		line-height: 140%;
		font-weight: 600;
		border-radius: 8px;
		-webkit-border-radius: 8px;
		-ms-border-radius: 8px;
		-moz-border-radius: 8px;
		-o-border-radius: 8px;
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.about_link_list li a span {
		font-size: 1.2rem;
		color: #777;
		margin-top: 4px;
	}
	
	.about_link_list li a.pdf:after,
	.about_link_list li a.word:after,
	.about_link_list li a.excel:after {
		content: "";
		display: inline-block;
		position: absolute;
		top: 4%;
		bottom: 4%;
		right: 4%;
		width: 10%;
		max-width: 48px;
	}
	
	.about_link_list li a.pdf:after {
		background: url("../img/icon_48_pdf.svg") no-repeat center center;
		background-size: contain;
	}
	
	.about_link_list li a.word:after {
		background: url("../img/icon_48_word.svg") no-repeat center center;
		background-size: contain;
	}
	
	.about_link_list li a.excel:after {
		background: url("../img/icon_48_excel.svg") no-repeat center center;
		background-size: contain;
	}
	
	.about_link_list li a:hover {
		background-color: rgba(0, 185, 0, 0.1);
	}
	
	.about_link_list li a.pdf:hover:after,
	.about_link_list li a.word:hover:after,
	.about_link_list li a.excel:hover:after {
		top: calc(4% - 5px);
	}
	
	.about_link_list a.icon_link_aftermark{
		color: #000000;
	}
	
	.about_link_list a.icon_link_aftermark:before,
	.about_link_list a.icon_link_aftermark:after{
		top:auto !important;
		right: 12px;
	}
	


	/*--------------------------------
	スマホ
	「TOPICS」ページ　ディレクトリ：topics/
	
	--------------------------------*/
	
	.topics_list .date {
		min-width: auto;
	}
	
	.topics_list .title {
		display: block;
		position: relative;
		padding-left: 0px;
		padding-bottom: 5px;
		font-size: 1.65rem;
		font-weight: 600;
		color: #666666;
		vertical-align: middle;
		line-height: 160%;
		margin-top: 0rem;
	}
	
	
	/*--------------------------------
	スマホ
	「お問い合わせ」ページ　ディレクトリ：contact/
	
	--------------------------------*/
	
	/*テーブル*/
	.form_table_box {
		margin-bottom: 20px;
	}
	
	.form_table_box table,
	.form_table_box table:not(.no_responsive_table):not(.ui-datepicker-calendar):not(.xdsoft_calendar table){
		border-top: 0px !important;
	}
	
	.form_table_box table tr,
	.form_table_box table:not(.no_responsive_table):not(.ui-datepicker-calendar):not(.xdsoft_calendar table) tr{
		display: block;
		border: none !important;
		border-bottom: #c5bebe dotted 1px !important;
		padding: 4px 0px 20px 0px !important;
		margin-bottom: 10px !important;
		width: 100% !important;
		
		box-sizing: border-box;/*width:100%で､padding分をハミ出させないためのスタイル*/
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	}
	
	.form_table_box table th{
		padding: 5px 0px 0px 0px !important;
		margin-bottom: 0px !important;
		background-color: #ffffff;
		/*white-space: nowrap;*/
		overflow: hidden;
		display: block;
		border: none !important;
		width: 100% !important;
		font-size: 94%;
		font-weight: 600;
		
		box-sizing: border-box;/*width:100%で､padding分をハミ出させないためのスタイル*/
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-ms-box-sizing: border-box;
	}
	
	.form_table_box table td {
		padding: 10px 0px 10px 0px;
		border-bottom: #c5bebe solid 0px;
		border-right: #c5bebe solid 0px;
		font-size: 100%;
	}
	
	.contact_select_optionbox {
		padding-left: 10px;
	}
	
	/* ラベルのスタイル　*/
	.chkbox_box label,
	.radio_box label {
		padding-left:		34px;
		font-size:		16px;
		line-height:		16px;
		display:		inline-block;
		cursor:			pointer;
		position:		relative;
		margin-bottom: 1.4rem;
	}
	
	/*box_grayと併用してスクロールを追加　div*/
	.scroll_box{
		width: 100%;
		height: 200px;
		margin: 0 auto;
		margin-bottom: 50px;
		overflow-y:scroll;
		overflow-x:hidden;
	
	}
	
	/*--------------------------------
	スマホ
	「404 Not found」ページ　ディレクトリ：404
	
	--------------------------------*/
	
	.box_404{
		/*
		display: block;
		position: relative;
		margin: 0 auto;
		width: 50%;
		max-width: 560px;
		padding-bottom: 20%;
		background: url(../img/404.svg) no-repeat center center;
		background-size: contain;
		opacity: 0.3;
		*/
	}



}/*@media screen and ( max-width: 768px )ここまで*/




/*プリント用調整（PC画面をA4に最適化）*/
@page {
	/*margin: 10mm 10mm !important;*/
}/*@pageここまで*/

@media print {

	html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
		/*zoom: 0.99;*/
	}html{
		font-size: 50%;
	}html, body{
		overflow: visible !important;
		/*zoom: 0.9;*/
	}body{
		background-color: #ffffff !important;
		width: 100% !important;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-ms-box-sizing: border-box;
		
	}body:before {
		content:none;
	}
	h1, h2, h3, h4, h5, h6 p{
	}

/* --------------------ヘッダー-------------------- */
	
	#header,
	.header{
		position: relative;
		background-color: #ffffff;
		top:0px;
		height: 80px;
	}
	
	/*固定ヘッダーロゴ　div*/
	.btn_logo,
	body.header_narrow_height .btn_logo{
		display: inline-block;
		position: relative;
		width: 300px;
		min-width: 240px;
		height: 80px;
	}
	
	.btn_logo a,
	.frontpage .btn_logo p,
	body.header_narrow_height  .btn_logo a,
	body.frontpage.header_narrow_height .btn_logo p{
		display: block;
		position: relative;
		width: 100%;
		height: 80px;
		background: url(../img/logo.svg) no-repeat left center;
		background-size: contain;
	}
	
	.sub_menu_box {
			padding-right: 0px;
	}

	.main_menu{
		right: 0px;
		zoom: 0.8;
	}


	/* --------------------グランドメニュー（ドロワーメニュー）-------------------- */
	
	.btn_drawermenu{
		display: none;
	}


	/* -------------------------------- 
	
 	コンテンツ欄
 	
	-------------------------------- */
	
	.anker{
		margin-top:0px;
		padding-top: 0px;
	}


	/*googleマップ配置欄　div*/
	.map_box{
		display: block;
		position: relative;
		width: 100%;
		height: auto !important;
		padding-bottom: 0px !important;
		margin: 0 auto;
	}
	.map_box iframe,
	.map_box object,
	.map_box embed {
		display: block;
		position: relative;
		top: auto;
		left: auto;
		width: 100%;
		height: 300px;
	}


	/* -------------------------------- 
	
 	パララックス設定-------------------------------- */
	
	.animation_1,
	.animation_2,
	.animation_3,
	.fadeInUp,
	.fadeIn,
	.fadeInBlur,
	.fadeInBlur_For3sec,
	.slideShutter {
		overflow: visible !important;
		opacity: 1 !important;
		filter: blur(0px);
		-webkit-filter: blur(0px);
	}


	/*------------------------------フッター------------------------------*/
	
	#footer{
		padding: 30px 0px 30px 0px;
	}
	.footer_shop{
		display: block;
		width: 100%;
	}
	
	.footer_inner{
		display: block;
		position: relative;
		padding: 50px 40px 20px 40px;
	}
	
	.footer_copyright_box{
		display: block;
		position: relative;
		top:auto;
		left:auto;
		width: 100%;
		transform: rotate(0deg);
		z-index: 8888;
	}
	
	.footer_copyright_inner p{
		color: color(display-p3 0.475 0.478 0.463);
	}


	/* ----------ページTOPへボタン---------- */
	#pagetop_wrapper {
		display: none !important;
	}



	/*--------------------------------
	プリント
	トップページ専用スタイル
	
	--------------------------------*/
	
	/*--------------- トップページのみのスタイル（メインビジュアル） ---------------*/
	/*section*/
	.mainvisual_area{
		overflow: hidden;
		padding-top: 20px;
	}
	.mainvisual_box{

	}
	.mainvisual_img_box img{

	}
	
	.mainvisual_catchcopy_box {
		padding-left: 5%;
	}
	
	.introduction {
		padding: 90px 40px 100px 40px;
		overflow: hidden;
	}
	
	.frontpage_topics {
		padding: 0px 40px 0px 40px;
		overflow: hidden;
	}
	
	.frontpage_counseling {
		padding: 120px 40px 50px 40px;
	}
	
	.frontpage_groups {
		padding: 80px 40px 80px 40px;
	}

	/*トップ未満のページ*/
	
	.contents_all{
		margin-top: 0px;
	}
	.contents_main{
		padding-left: 40px;
		padding-right: 40px;
	}
	


}/*@media printここまで*/



