/*
Theme Name: 今金町社会福祉協議会 テーマver1.0
Theme URI: https://XXXX.jp
Author:  JET BEANS INC.
Author URI: http://jetbeans.com
Description: オリジナルデザインCSS
Version: 1.0
License:
License URI:
Tags:
Text Domain: XXXX.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*/

/*
テーマカラーメモ

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

ポイントカラー1、濃いめの緑
#1b6f11

ポイントカラー2：ピンク
#eb6c62

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

*/

.sample-color {
	color: #eb6c62
}



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.8rem;
	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: #000000;/*色指定*/
	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: #000000;/* 色指定 */
	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: #1b7213;
}

.link_color{
	color: #1b7213;
}

.link_color:hover,
.news_page_content_box a:hover {
	color: #1b7213;
}

.link_hover:hover {
	color: #1b7213;
	text-decoration: underline;
}

.link_underline,
.news_page_content_box a {
	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;
}

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: relative;
	width: 100%;
	height: 116px;
	z-index: 10;
}

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

.header_inner {
	display: block;
	position: relative;
	width: 100%;
	padding: 20px 90px 20px 90px;
	margin: 0 auto;
	z-index: 1;
}

/*固定ヘッダーロゴ　div*/
.btn_logo {
	display: inline-block;
	position: relative;
	width: 30%;
	min-width: 310px;
	max-width: 360px;
	height: 66px;
	-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: 2;
}

.btn_logo a,
.frontpage .btn_logo p {
	display: inline-block;
	position: relative;
	width: 360px;
	height: 66px;
	background: url(../img/logo.svg) no-repeat center center;
	background-size: contain;/*原寸360×66*/
}

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

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

.btn_logo p span {
	display: none;
}


.header_inner .tel_box{
	display: inline-block;
	position: absolute;
	top:20px;
	right: -1px;
	padding: 14px 40px 14px 40px;
	background: url("../img/bg_pattern_red.jpg") center center;
	background-size: 466px 349px;
	background-color: #ec6762;
	
	border-radius: 30px 0 0 30px;
	-webkit-border-radius: 30px 0 0 30px;
	-moz-border-radius: 30px 0 0 30px;
}

.header_inner .tel_box .header_tel{
	color: #ffffff;
	font-weight: 600;
	font-size: 1.56rem;
}

.header_inner .tel_box .header_tel_link{
	color: #ffffff;
	font-weight: 600;
	font-family: "Sen", sans-serif;
	font-size: 2.4rem;
}

.header_inner .tel_box .header_tel_link:before {
	font-family: "Material Symbols Outlined";
	content: "\e0b0";
	display: inline-block;
	position: relative;
	width: 2.4rem;
	height: 2.4rem;
	font-size: 2.4rem;
	margin-left: 8px;
	margin-right: 2px;
	top: -3px;
	font-weight: normal !important;
	vertical-align: middle;
	line-height: normal;
}



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

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

/*トップページ以外のコンテンツ欄*/
.contents_all {
	margin-top: 0px;/*固定ヘッダーの場合は高さ分を開ける*/
}

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


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

 パララックス設定

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

/*フェードイン及びちょっと上に移動*/
.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: #00c8b3;
		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;
	padding: 80px 90px 80px 90px;
	background: url("../img/bg_pattern_litegreen.jpg");
}

/**/
.footer_inner {
	display: block;
	position: relative;
	max-width: 1320px;
	margin: 0 auto;
}



.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;/* 文字間を詰めて隙間を削除する */

	justify-content: space-between;/* 左右均等配置 */
}

.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-left: calc(15vw + 31px);
}

.footer_logomark_box {
	display: block;
	position: absolute;
	width: 14vw;
	top: 0;
	left: 0;
}

.footer_logo_box {
	margin-bottom: 10px;
}

.footer_name {
	line-height: 120%;
	font-weight: 600;
	font-size: 2.7rem;
	margin-bottom: 20px;
}

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

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

.footer_address {
	position: relative;
	margin-left: -21px;
	font-size: 1.65rem;
	padding-left: 20px;
	border-left: solid 1px #000000;
}

span.footer_address_text,
span.footer_tel_text {
	margin-right: 1.2rem;
}

/*1180px未満*/
@media (max-width: 1180px) {
	span.footer_address_text {
		display: block;
		width: 100%;
	}
}

/*767px未満*/
@media (max-width: 767px) {
	span.footer_tel_text {
		display: block;
		width: 100%;
	}
}

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

.footer_mail_link {
	text-decoration: none;
}

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

.footer_content_2column .column_inner:nth-of-type(2) {
	display: flex;
	-webkit-align-items: flex-end;/* Safari etc. */
	-ms-align-items: flex-end;/* IE10        */
	align-items: flex-end;
}

.footermenu {
	margin-bottom: 40px;
}

/*ul*/
.footermenu .sns_list {
	display: flex;
}

.footermenu .sns_list li {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	vertical-align: middle;
	margin-left: 0px;
	margin-right: 0px;
	white-space: nowrap;
	line-height: 100%;
	margin-right: 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;
}

.footermenu .sns_list li a {
	display: flex;
	position: relative;
	width: 62px;
	height: 62px;
	background-color: #ffffff;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;

	-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;
}

.footermenu .sns_list li a.ig {
	background: url("../img/icon_sns_ig.png") no-repeat center center;
	background-size: 33px 33px;
	background-color: #ffffff;
}

.footermenu .sns_list li a.fb {
	background: url("../img/icon_sns_fb.png") no-repeat center center;
	background-size: 33px 33px;
	background-color: #ffffff;
}

.footermenu .sns_list li a:hover {
}

.footermenu .sns_list li a:hover.ig {
	background-size: 35px 35px;
}

.footermenu .sns_list li a:hover.fb {
	background-size: 35px 35px;
}

.footermenu .sns_list li a span{
	display: none;
}


/*コピーライト*/
.footer_copyright_box {
	display: block;
	position: absolute;
	bottom: 0;
	left: auto;
	right: 0;
}

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

.footer_copyright {
	display: block;
}

.footer_copyright_inner {}

.footer_copyright_inner p {
	font-size: 1.3rem;
	color: #000000;
	white-space: nowrap;
	line-height: 100%;
	text-align: right;
}





/* ----------ページ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:url("../img/bg_pattern_green.jpg");
	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: "\e5ce";
	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: 600;
	color: #ffffff;
}


.pagetop a:hover {
	opacity: 0.8;
}

.pagetop a span {
	display: none;
}



/* ----------下部固定SNSリンクバナー---------- */

.bottom_banner_box{
	display: block;
	position: fixed;
	right: 15px;
	bottom: 10px;
	padding: 30px;
	border: solid 4px #ffffff;
	background: url("../img/bg_pattern_green.jpg");
	border-radius: 40px;
	-webkit-border-radius: 40px;
	-moz-border-radius: 40px;
	z-index: 9999;
}

.right_margin_on{
	right: 80px;
}

.bottom_banner_box_inner{
	
}

.bottom_banner_text{
	font-size: 1.5rem;
	color: #ffffff;
	font-weight: 600;
	line-height: 150%;
	margin-bottom: 10px;
}


/*ul*/
.bottom_banner_sns_list {
	display: flex;
	text-align: center;
	justify-content: center; /* 子要素をflexboxにより左右中央に配置する */
}

.bottom_banner_sns_list li {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	vertical-align: middle;
	margin-left: 0px;
	margin-right: 0px;
	white-space: nowrap;
	line-height: 100%;
	margin-right: 10px;
	margin-left: 10px;
	-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;
}

.bottom_banner_sns_list li span{
	display: inline-block;
	position: relative;
	font-size: 1.4rem;
	font-weight: 600;
	color: #ffffff;
}

.bottom_banner_sns_list li a {
	display: flex;
	position: relative;
	width: 62px;
	height: 62px;
	background-color: #ffffff;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;

	-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;
}

.bottom_banner_sns_list li a.ig {
	background: url("../img/icon_sns_ig.png") no-repeat center center;
	background-size: 33px 33px;
	background-color: #ffffff;
}

.bottom_banner_sns_list li a.fb {
	background: url("../img/icon_sns_fb.png") no-repeat center center;
	background-size: 33px 33px;
	background-color: #ffffff;
}

.bottom_banner_sns_list li a:hover {
}

.bottom_banner_sns_list li a:hover.ig {
	background-size: 35px 35px;
}

.bottom_banner_sns_list li a:hover.fb {
	background-size: 35px 35px;
}



.bottom_banner_close{
	display: block;
	position: absolute;
	top:-15px;
	right: -15px;
	width: 60px;
	height: 60px;
	background: url("../img/link_banner_close.png") no-repeat center center;
	background-size: contain;
	cursor: pointer;
}

.bottom_banner_close:hover{
	opacity: 0.9;
}

.bottom_banner_close 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: #0090a9 !important
}

/*ポイントカラー1、ベタ背景色、枠線等のエメラルドグリーン　#0090a9*/
.fc_skyblue {
	color: #6699cc !important
}

.fc_green {
	color: #11720c !important
}

.fc_green2 {
	color: #66aa64 !important
}

.fc_lightgreen,
.fc_litegreen {
	color: #99cc66 !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;
}

.mgothic {
	font-family: "dnp-shuei-mgothic-std", sans-serif;/*ウェイトは400、600*/
}




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

/*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;
}

.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;
}



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

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_emerald {
	display: block;
	width: 100%;
	height: 1px;
	margin-top: 5rem;
	margin-bottom: 5rem;
	border: none;
	border: 0;
	background: #0090a9;
	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 rgba(0, 174, 175, 1);
}

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

.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: 3vw 3.8vw 3vw 3.8vw;
	margin-top: 10px;
	margin-bottom: 25px;
	border: solid 1px #dadada;
}

.box_green {
	padding: 3vw 3.8vw 3vw 3.8vw;
	margin-top: 10px;
	margin-bottom: 25px;
	border: solid 1px rgba(0, 174, 175, 1);
}

.box_emerald {
	padding: 3vw 3.8vw 3vw 3.8vw;
	margin-top: 10px;
	margin-bottom: 25px;
	border: solid 1px #0090a9;
}

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

.box_gray_compact {
	padding: 3vw 3.8vw 3vw 3.8vw;
	margin-top: 10px;
	margin-bottom: 25px;
	border: solid 1px #dadada;
	line-height: 150%;
}

.box_green_compact {
	padding: 3vw 3.8vw 3vw 3.8vw;
	margin-top: 10px;
	margin-bottom: 25px;
	border: solid 1px rgba(0, 174, 175, 1);
	line-height: 150%;
}

.box_white_compact {
	padding: 3vw 3.8vw 3vw 3.8vw;
	margin-top: 10px;
	margin-bottom: 25px;
	border: solid 0px #d2d2d2;
	line-height: 150%;
}



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

/* 背景が薄いエメラルドのボックス */
.box_bg_emerald {
	padding: 3.6vw 4.6vw 3.6vw 4.6vw;
	margin-top: 10px;
	margin-bottom: 25px;
	background-color: #EDF5F6;
}

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

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

/*「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;*/
}

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

.display_none {
	display: none;
}



/* ---------- 記事内の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: 2rem;
}

ul.disc li {
	list-style: none;
	margin-bottom: 0.5rem;
}

ul.disc li:before {
	display: inline-block;
	content: "\025cf";
	text-align: center;
	font-size: 7px;
	margin-right: 8px;
	margin-left: -1.5rem;
	margin-top: -2px;
	vertical-align: middle;
	color: #0093ae;
}

ul.circle_blue {
	padding-left: 1.5rem;
}

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

ul.circle_blue li:before {
	display: inline-block;
	content: "\025cf";
	text-align: center;
	font-size: 9px;
	margin-right: 5px;
	margin-left: -1.5rem;
	margin-top: -1px;
	vertical-align: middle;
	color: #333333 !important;
}





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: #00c8b3;
	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: #0090a9;
}

.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,
.text_box_2column_narrow,
.text_box_2column_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_2column.center,
.text_box_2column_narrow.center,
.text_box_2column_widthauto.center {
	justify-content: center; /* 子要素をflexboxにより左右中央に配置する */
}

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



.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: 42%;
}

.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: 42%;
}

.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: 26%;
}

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

.text_box_2column_narrow .column_inner {
	width: 49%;
	margin-right: 1%;
}

.text_box_2column_widthauto .column_inner {
	width: auto;
}

.text_box_2column.center .column_inner,
.text_box_2column_narrow.center .column_inner,
.text_box_2column_widthauto.center .column_inner {
	
}

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



/* ---------- 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.center,
.text_box_3column_narrow.center,
.text_box_3column_widthauto.center {
	justify-content: center; /* 子要素をflexboxにより左右中央に配置する */
}

.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: 32.666666%;
	margin-right: 1%;
}

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

.text_box_3column.center .column_inner,
.text_box_3column_narrow.center .column_inner,
.text_box_3column_widthauto.center .column_inner {
	
}



.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: 18px;
	height: 18px;
	font-size: 18px;
	margin-left: 5px;
	top: -3px;
	font-weight: normal !important;
	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: 20px;
	height: 20px;
	font-size: 20px;
	margin-left: 3px;
	margin-right: 3px;
	top: -2px;
	font-weight: normal !important;
	vertical-align: middle;
	line-height: normal;
	text-indent: 0px;
}

.annotate .icon_blank:after {
	width: 16px;
	height: 16px;
	font-size: 16px;
	top: -4px;
}

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

/*pdf*/
.icon_pdf:after,
.icon_download:after {
	font-family: "Material Symbols Outlined";
	content: "\e873";
	display: inline-block;
	position: relative;
	width: 22px;
	height: 22px;
	font-size: 22px;
	margin-left: 5px;
	top: -3px;
	font-weight: normal !important;
	vertical-align: middle;
	line-height: normal;
}

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

/*search*/
.icon_search:after {
	font-family: "Material Symbols Outlined";
	content: "\e8b6";
	display: inline-block;
	position: relative;
	width: 22px;
	height: 22px;
	font-size: 22px;
	margin-left: 5px;
	top: -3px;
	font-weight: normal !important;
	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: 22px;
	height: 22px;
	font-size: 22px;
	margin-left: 5px;
	top: -2px;
	font-weight: normal !important;
	vertical-align: middle;
	line-height: normal;
}

/*基本ボタン　背景白、罫エメラルド*/
.button {
	display: inline-block;
	text-align: center;
	position: relative;
	padding: 2rem 2rem 2rem 2rem;
	min-width: 320px;
	width: auto;
	font-size: 2.2rem;
	font-weight: 700;
	background: url('../img/bg_pattern_green.jpg') center center;
	color: #ffffff !important;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-ms-border-radius: 20px;
	-moz-border-radius: 20px;
	-o-border-radius: 20px;

	-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:after {
	font-family: "Material Symbols Outlined";
	content: "\e5e1";
	display: inline-block;
	position: absolute;
	top:calc(50% - 11px);
	right: 15px;
	width: 18px;
	height: 18px;
	font-size: 18px;
	font-weight: normal !important;
	vertical-align: middle;
	line-height: normal;
}



.button:hover {
	opacity: 0.9;
}

.button span.pdf{
	display: inline-block;
	position: relative;
	font-size: 1.1rem;
	padding: 2px 8px 2px 8px;
	background-color: #d87968;
	top: -3px;
	margin-left: 5px;
}

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



/*ボタンのときは右につくアイコンは無くす*/
a.button.icon_link:after,
a.button.icon_blank:after,
a.button.icon_mail:after,
a.button.icon_pdf:after,
a.button.icon_download:after,
a.button.icon_tel:after,
a.button.icon_search:after,
a.button.icon_picture_zoom:after {
	content: none;
}

.button:hover {
	background-color: #1b7213;
	color: #ffffff;
	text-decoration: none;
}


/*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_download:hover:after,
a.button.icon_tel:hover:after,
a.button.icon_search:hover:after,
a.button.icon_picture_zoom:hover:after {
	color: #ffffff !important;
}


.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;
}

.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{
	display: block;
	position: relative;
	margin: 0 auto;
	margin-top: -116px;
	padding-bottom: 110px;
	margin-bottom: 100px;
	z-index: 1;
}

/*
.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: block;
	position:relative;
	
	z-index: 0;
}

/*「.slick-slider」*/
.main_visual{
	display: flex; /* 追加 */
	align-items: center; /* 追加 */
	
	width: 68%;
	margin: 0 0 0 auto;
	max-height: 760px;
	
	z-index: 1;
}

.slick-list{
	overflow: hidden;
	border-radius: 0px 0 0 40px;
	-webkit-border-radius: 0px 0 0 40px;
	-moz-border-radius: 0px 0 0 40px;
	max-height: 740px;
	background-color: #ffffff;
}

/*2000px以上*/
@media (min-width: 2000px) {
	.main_visual{
		width: 1300px;
		margin-right: calc(100vw - 32% - 1300px );
	}
	.slick-list{
		border-radius: 0px 0 40px 40px;
		-webkit-border-radius: 0px 0 40px 40px;
		-moz-border-radius: 0px 0 40px 40px;
	}
}

.slick-list{
	
}

.slick-slide{

}

.main_visual_1box{
	width: 100%;
	padding-bottom: 65%;
	/*min-height: 50vh;*/
	max-height: 740px;
	overflow: hidden;
}


.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: 104%;
	height: auto;
}

/*画面幅1300px以上*/
@media (min-width: 1300px) {
	.main_visual_1box{

	}
	.main_visual_1box img{

	}
}

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

/* dotsを丸くカスタマイズするCSS */
.dots-wrap {
		display: flex;
		position: relative;
		justify-content: center;
		z-index: 3;
}

.dots-wrap li {
	display: inline-block;
	position: relative;
		width: 8px;
		height: 8px;
		margin: 20px 8px 0px 8px;
		background: #bc6;
		border-radius: 50%;
		cursor: pointer;
}

.dots-wrap li:hover,
.dots-wrap li.slick-active {
		background: rgb(113, 174, 106);
}
.dots-wrap li button {
		display: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		outline: none;
		padding: 0;
		border: none;
		background-color: transparent;
}

.mainvisual_bg{
	display: inline-block;
	position: absolute;
	width: 68%;
	bottom: -110px;
	top:116px;
	background: url("../img/bg_pattern_litegreen.jpg") center center;
	background-color: #dee6bf;
	border-radius: 0px 0 40px 0;
	-webkit-border-radius: 0px 0 40px 0;
	-moz-border-radius: 0px 0 40px 0;
	z-index: 0;
}

.mainvisual_text_box{
	display: inline-block;
	position: absolute;
	width: 68%;
	bottom: 0px;
	top:116px;
	
	-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_hokkaido{
	display: inline-block;
	position: absolute;
	height: auto;
	text-align: center;
	top:8%;
	left: 7%;
	right: 60%;
	z-index: 3;
	
	-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_hokkaido img{
	max-height: 280px;
}

.mainvisual_catchcopy_box{
	display: flex; /* 子要素をflexboxで揃える */
	
	z-index: 0;
}


.mainvisual_catchcopy{
	display: inline-block;
	position: absolute;
	background: url("../img/main_catchcopy.png") no-repeat left top;
	background-size: contain;
	width: 70%;
	height: 32%;
	bottom: 9%;
	left: 7%;
	z-index: 3;
	
	-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{
	display: none;
}

/*画面幅1200px未満*/
@media (max-width: 1200px) {
	.mainvisual_catchcopy{
		bottom: 7%;
	}
}

/*画面幅900px未満*/
@media (max-width: 900px) {
	.mainvisual_catchcopy{
		bottom: 5%;
	}
}

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



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




/*--------------- トップページのイントロダクション、事業紹介、所在地 ---------------*/

/*イントロダクション*/
.frontpage_about {
	display: block;
	position: relative;
	margin: 0 auto;
	margin-bottom: 0px;
	padding: 0px 90px 0px 90px;
	background-color: #ffffff;
	z-index: -1;
}

/*枠の下のほうに牛を配置*/
.frontpage_about:after {
	content:"";
	display: inline-block;
	position: absolute;
	width: 457px;
	height: 205px;
	background: url("../img/bg_img_cattle.png") no-repeat center center;
	background-size: contain;
	left: 18%;
	bottom:-70px;;
}

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

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

.frontpage_introduction_content_box:before{
	content:"";
	display: inline-block;
	position: absolute;
	width: 24%;
	padding-bottom: 22%;
	background: url("../img/bg_img_potato.png") no-repeat center center;
	background-size: contain;
	margin-left: calc(-1 * (16vw));
	top:9%;
}

.frontpage_introduction_content_box:after{
	content:"";
	display: inline-block;
	position: absolute;
	width: 24%;
	padding-bottom: 30%;
	background: url("../img/bg_img_rice.png") no-repeat center center;
	background-size: contain;
	margin-right: calc(-1 * (7vw));
	bottom:-10%;
	right: 0px;
}

.introduction_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;/* 文字間を詰めて隙間を削除する */
	position: relative;
}

.introduction_2column .column_inner{
	display: inline-block;
	position: relative;
	vertical-align: top;
	letter-spacing: normal;
	width: 50%;
}

.introduction_2column .column_inner:nth-child(1){
	width: 56%;
}

.introduction_2column .column_inner:nth-child(2){
	width: 44%;
	max-width: 480px;
	margin-left: 0%;
}

.introduction_catchcopy{
	font-size: 5.0rem;
	font-weight: 700;
	color: rgb(23, 114, 18);
	margin-bottom: 60px;
}

.introduction_text{
	font-size: 2.0rem;
	color: rgb(23, 114, 18);
	font-weight: 600;
}

.introduction_img{
	margin-top: -80px;
	margin-left: -12%;
	width: 100%;
}

.introduction_img img{
	width: 100%;
	height: auto;
}

/*事業紹介の枠*/
.frontpage_service_content_box{
	display: block;
	position: relative;
	background: url("../img/bg_pattern_litegreen.jpg") center center;
	background-color: #dee6bf;
	padding: 6vw 6vw 3vw 6vw;
	border-radius: 40px 40px 0px 0px;
	-webkit-border-radius: 40px 40px 0px 0px;
	-moz-border-radius: 40px 40px 0px 0px;
}

/*所在地の枠*/
.frontpage_about_content_box{
	display: block;
	position: relative;
	background: url("../img/bg_pattern_litegreen.jpg") center center;
	background-color: #dee6bf;
	padding: 3vw 6vw 6vw 6vw;
	border-radius: 0px 0px 40px 40px;
	-webkit-border-radius: 0px 0px 40px 40px;
	-moz-border-radius: 0px 0px 40px 40px;
	margin-bottom: 100px;
}

/*事業紹介の内容*/
.service_catchcopy{
	display: block;
	position: relative;
	text-align: center;
	font-size: 3.0rem;
	font-weight: 700;
	margin-bottom: 40px;
	color: #3E3A39;
}

.service_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;/* 文字間を詰めて隙間を削除する */
	position: relative;
	margin-bottom: 30px;
}

.service_2column .column_inner{
	display: inline-block;
	position: relative;
	vertical-align: top;
	letter-spacing: normal;
	padding: 30px 30px 30px 30px;
	width: 48.5%;
	margin-right: 3%;
	margin-bottom: 3%;
	background-color: #ffffff;
	border: solid 3px #adc44c;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
}

.service_2column .column_inner:nth-of-type(2n){
	margin-right: 0;
}

.service_title{
	text-align: center;
	font-size: 2.7rem;
	font-weight: 700;
	margin-bottom: 0px;
	color: #0a6609;
}

.service_subtitle{
	text-align: center;
	font-size: 1.7rem;
	margin-bottom: 10px;
}

/*所在地の内容*/
.frontpage_about_content_box .content_box_inner{
	display: block;
	position: relative;
	vertical-align: top;
	letter-spacing: normal;
	padding: 5vw;
	background-color: #ffffff;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
}

.about_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;/* 文字間を詰めて隙間を削除する */
	position: relative;
	margin-bottom: 20px;
}

.about_2column .column_inner{
	display: inline-block;
	position: relative;
	vertical-align: top;
	letter-spacing: normal;
	width: 46%;
	margin-right: 2%;
	margin-bottom: 20px;
}

.about_2column .column_inner:nth-of-type(2n){
	width: 52%;
	margin-right: 0;
}

.about_title{
	font-size: 2.8rem;
	color: #0a6609;
	line-height: 130%;
	margin-bottom: 40px;
}

.about_title span{
	display: block;
	position: relative;
	font-size: 2.2rem;
}

.about_address{
	line-height: 140%;
	margin-bottom: 20px;
}

.about_tel{
	line-height: 140%;
}

.tel_link{
	
}

/*無限スクロール*/
.scroll_img_box{
	margin-bottom: 120px;
}

.infiniteslide{
	
}

.infiniteslide ul{
	
}

.infiniteslide ul li{
	display: inline-block;
	position: relative;
	margin-left: 3px;
	margin-right: 3px;
}

.infiniteslide ul li img{
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
}


/*「お知らせ・活動報告」「現況報告並びに財務諸表等」共通タイトル*/
.title_box{
	display: block;
	position: relative;
	margin-bottom: 40px;
}

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

.section_title:after{
	content:"";
	display: block;
	position: relative;
	height: 8px;
	width: auto;
	margin-top: 10px;
	background: url("../img/title_border.png") repeat-x left top;
	background-size: auto 5px;
}


/*お知らせ・活動報告*/
.frontpage_info{
	display: block;
	position: relative;
	margin: 0 auto;
	margin-bottom: 0px;
	padding: 0px 90px 120px 90px;
	background-color: #ffffff;
	z-index: -1;
}

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

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

.info_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;/* 文字間を詰めて隙間を削除する */
	position: relative;
}

.info_2column .column_inner{
	display: inline-block;
	position: relative;
	vertical-align: top;
	letter-spacing: normal;
	width: 48%;
	margin-right: 4%;
}

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

/*a*/
.button_sns_ig,
.button_sns_fb{
	display: flex;
	flex-direction: column; /* 子要素をflexboxにより縦並びに揃える */
	align-items: center;  /* 子要素をflexboxにより上下中央に配置する*/
	text-align: left;
	padding: 2vw 2vw 2vw 0px;
	background: url("../img/bg_pattern_green.jpg");
	background-color: #63a454;
	color: #ffffff;
	font-size: 3.0rem;
	font-weight: 600;
	
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	line-height: 120%;
	
	-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_sns_ig:visited,
.button_sns_fb:visited{
	color: #ffffff !important;
}

/*1600px以上*/
@media (min-width: 1500px) {
	.button_sns_ig,
	.button_sns_fb{
		padding: 30px 30px 30px 0px;
	}
}

/*span*/
.button_sns_ig .inner,
.button_sns_fb .inner{
	display: flex;
	position: relative;
	flex-direction: column; /* 子要素をflexboxにより縦並びに揃える */
	justify-content: flex-start; /*左寄せ（デフォルト）*/
	padding-left: 120px;
}

/*span*/
.button_sns_ig .icon,
.button_sns_fb .icon{
	display: flex;
	justify-content: center; /* 子要素をflexboxにより左右中央に配置する */
	align-items: center;  /* 子要素をflexboxにより上下中央に配置する*/
	position: absolute;
	width: 72px;
	height: 72px;
	background-color: #ffffff;
	border-radius: 88px;
	-webkit-border-radius: 88px;
	-moz-border-radius: 88px;
	top:calc(44px - 0px;);
	left: 30px;
}

/*span*/
.button_sns_ig .small,
.button_sns_fb .small{
	font-size: 1.7rem;
	font-weight: normal;
}

.button_sns_ig:hover,
.button_sns_fb:hover{
	opacity: 0.9;
	color: #ffffff;
	background-color: #6cae5d;
}


/*現況報告並びに財務諸表等*/
.frontpage_report{
	display: block;
	position: relative;
	margin: 0 auto;
	margin-bottom: 0px;
	padding: 100px 90px 100px 90px;
	background-color: #f6f2ed;
	z-index: -1;
}

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

.title_box{
	
}

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

.report_subtitle{
	display: block;
	position: relative;
	font-size: 2.6rem;
	font-weight: 600;
	padding-bottom: 10px;
	border-bottom: solid 1px #11720c;
	margin-bottom: 40px;
}

.frontpage_report_content_box h4{
	color: #11720c;
	font-size: 2.2rem;
	font-weight: 600;
}

.report_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;/* 文字間を詰めて隙間を削除する */
	position: relative;
}

.report_2column .column_inner{
	display: inline-block;
	position: relative;
	vertical-align: top;
	letter-spacing: normal;
	width: 47.5%;
	margin-right: 5%;
	padding: 0px 2vw 40px 2vw;
	border-bottom: solid 1px #11720c;
}

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


/*ul*/
.report_list{
	
}

.report_list li{
	
}

.report_list li a{
	display: block;
	position: relative;
	font-size: 1.9rem;
	font-weight: 600;
	padding-left: 34px;
}

.report_list li a:before{
	font-family: "Material Symbols Outlined";
	content: "\e5e1";
	display: inline-block;
	position: absolute;
	overflow: hidden;
	top:6px;
	left: 0;
	color: #ffffff;
	background-color: #66aa64;
	font-size: 12px;
	width: 20px;
	height: 22px;
	text-align:center;
	padding-left: 2px;
	line-height: 22px;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
}

.report_list li a:hover{
	text-decoration: underline;
	color: #11720c;
}


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

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

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

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

@supports (-webkit-touch-callout: none) {

	.drawermenu_box,
	.mainvisual_area,
	#mainvisual_box,
	.mainvisual,
	.mainvisual_catchcopy_box {
		/* Safari用のハック */
		/*height: -webkit-fill-available;*/
	}
}



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

「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 {
		display: block;
		position: relative;
		width: 100%;
		padding: 20px 30px 20px 30px;
		margin: 0 auto;
		z-index: 1;
	}
	
	.header_inner .tel_box{
		padding: 12px 30px 12px 30px;
	}
	

	
	/* --------------------------------
	iPad
 	コンテンツ欄
 	
	-------------------------------- */
	
	.anker {}
	/*------------------------------
	iPad
	フッター
	
	------------------------------*/
	
	#footer {
		display: block;
		position: relative;
		padding: 40px 40px 40px 40px;
	}
	
	.footer_inner {}
	
	
	
	
	/*------------------------------各パーツ設定------------------------------*/
	
	.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: 55%;
	}
	
	.text_box_2column.column_6_4 .column_inner:nth-child(2n) {
		width: 41%;
	}
	
	.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: 41%;
	}
	
	.text_box_2column.column_4_6 .column_inner:nth-child(2n) {
		width: 55%;
	}
	
	.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 {
		margin-bottom: 60px;
	}
	/*--------------- トップページのイントロダクション、事業紹介、所在地 ---------------*/
	
	/*イントロダクション*/
	.frontpage_about {
		padding: 0px 40px 0px 40px;
	}
	
	/*枠の下のほうに牛を配置*/
	.frontpage_about:after {
		content:"";
		display: inline-block;
		position: absolute;
		width: 300px;
		height: 135px;
		background: url("../img/bg_img_cattle.png") no-repeat center center;
		background-size: contain;
		left: 10%;
		bottom:-70px;;
	}
	
	.frontpage_introduction_content_box:before{
		width: 22%;
		margin-left: 5%;
		top:auto;
		bottom: 2%;
	}
	
	.frontpage_introduction_content_box:after{
		width: 20%;
		margin-right: 2%;
		bottom:-10%;
		right: 0px;
	}
	
	.introduction_img {
		margin-left: -25%;
	}

	/*事業紹介の枠*/
	.frontpage_service_content_box{
		padding: 40px 40px 40px 40px;
	}
	
	/*所在地の枠*/
	.frontpage_about_content_box{
		padding: 40px 40px 40px 40px;
	}
	
	.scroll_img_box {
		margin-bottom: 50px;
	}
	
	/*「お知らせ・活動報告」「現況報告並びに財務諸表等」共通タイトル*/
	.title_box{
		display: block;
		position: relative;
		margin-bottom: 0px;
	}
	
	/*お知らせ・活動報告*/
	.frontpage_info{
		padding: 0px 40px 50px 40px;
	}
	
	/*現況報告並びに財務諸表等*/
	.frontpage_report{
		padding: 50px 40px 50px 40px;
	}
	
	
	/*--------------------------------
	タブレット
	トップページ以外のページの共通パーツ
	
	--------------------------------*/
	
	

}

/*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;
	}
	
	/*トップページのみ*/
	.frontpage .header {}
	
	.header_inner {
		display: block;
		position: relative;
		width: 100%;
		min-width: auto;
		height: 54px;
		padding-left: 0px;
		/*padding-left: calc(3vw + 240px;);*/
		padding-right: 0px;
		text-align: right;
	}
	
	/*固定ヘッダーロゴ　div*/
	.btn_logo {
		display: block;
		position: absolute;
		top: 0px;
		left: 15px;
		width: 200px;
		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: 200px;
		height: 54px;
		background: url(../img/logo.svg) no-repeat center center;
		background-size: 200px 54px;
	}
	
	.frontpage .btn_logo p {
		background: url(../img/logo.svg) no-repeat center center;
		background-size: 200px 54px;
	}
	
	.frontpage .btn_logo p a {
		display: none;
	}
	
	.btn_logo p span {
		display: none;
	}
	
	.header_inner .tel_box{
		display: inline-block;
		position: absolute;
		top:10px;
		right: -1px;
		padding: 4px 10px 4px 10px;
		background: url("../img/bg_pattern_red.jpg") center center;
		background-size: 466px 349px;
		background-color: #ec6762;
		
		border-radius: 30px 0 0 30px;
		-webkit-border-radius: 30px 0 0 30px;
		-moz-border-radius: 30px 0 0 30px;
	}
	
	.header_inner .tel_box .header_tel{
		display: block;
		position: relative;
		color: #ffffff;
		font-weight: 600;
		font-size: 1.3rem;
	}
	
	.header_inner .tel_box .header_tel_link{
		color: #ffffff;
		font-weight: 600;
		font-family: "Sen", sans-serif;
		font-size: 1.6rem;
	}
	
	.header_inner .tel_box .header_tel_link:before {
		font-family: "Material Symbols Outlined";
		content: "\e0b0";
		display: inline-block;
		position: relative;
		width: 1.6rem;
		height: 1.6rem;
		font-size: 1.6rem;
		margin-left: 3px;
		margin-right: 2px;
		top: -3px;
		font-weight: normal !important;
		vertical-align: middle;
		line-height: normal;
	}
	
	/* --------------------------------
	スマホ
 	コンテンツ欄
 	
	-------------------------------- */
	
	.anker {
		margin-top: -64px;
		padding-top: 64px;
	}
	
	/*------------------------------
	スマホ
	フッター
	
	------------------------------*/
	
	#footer {
		display: block;
		position: relative;
		padding: 30px 15px 25px 15px;
	}
	
	.footer_inner {
		display: block;
		position: relative;
		margin: 0 auto;
	}
	
	
	
	.footer_content_2column {
		display: block;
		position: relative;
	
		letter-spacing: normal;
	}
	
	.footer_content_2column .column_inner {
		display: block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
	}
	
	.footer_content_2column .column_inner:nth-of-type(1) {
		padding-left: 100px;
	}
	
	.footer_logomark_box {
		display: block;
		position: absolute;
		width: 90px;
		top: 0px;
		left: 0;
	}
	
	.footer_logo_box {
		margin-bottom: 10px;
	}
	
	.footer_name {
		line-height: 120%;
		font-weight: 600;
		font-size: 2.0rem;
		margin-bottom: 10px;
	}
	
	.footer_name span{
		font-size: 1.6rem;
	}
	
	.footer_address_box {
		position: relative;
		margin-bottom: 20px;
	}
	
	.footer_address {
		position: relative;
		margin-left: 0px;
		font-size: 1.55rem;
		padding-left: 0px;
		border-left: solid 0px #7c7c7c;
	}
	
	span.footer_address_text,
	span.footer_tel_text {
		margin-right: 1.2rem;
	}
	/*a*/
	.footer_tel_link {
		text-decoration: underline;
		pointer-events: visible;
		color: #1b6f11;
	}
	
	.footer_mail_link {
		text-decoration: none;
	}
	
	.footer_tel_link:hover,
	.footer_mail_link:hover {
		text-decoration: underline;
	}
	
	.footer_content_2column .column_inner:nth-of-type(2) {
		display: flex;
		-webkit-align-items: flex-end;
		/* Safari etc. */
		-ms-align-items: flex-end;
		/* IE10        */
		align-items: flex-end;
	}
	
	.footermenu {
		display: block;
		position: relative;
		width: 100%;
		margin-bottom: 30px;
	}
	
	/*ul*/
	.footermenu .sns_list {
		display: flex;
		justify-content: center; /* 子要素をflexboxにより左右中央に配置する */
		margin: 0 auto;
	}
	
	.footermenu .sns_list li {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		vertical-align: middle;
		margin-left: 0px;
		margin-right: 0px;
		white-space: nowrap;
		line-height: 100%;
		margin-right: 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;
	}
	
	.footermenu .sns_list li a {
		display: flex;
		position: relative;
		width: 48px;
		height: 48px;
		background-color: #ffffff;
		border-radius: 50%;
		-webkit-border-radius: 50%;
		-moz-border-radius: 50%;
	
		-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;
	}
	
	.footermenu .sns_list li a.ig {
		background: url("../img/icon_sns_ig.png") no-repeat center center;
		background-size: 28px 28px;
		background-color: #ffffff;
	}
	
	.footermenu .sns_list li a.fb {
		background: url("../img/icon_sns_fb.png") no-repeat center center;
		background-size: 28px 28px;
		background-color: #ffffff;
	}
	
	.footermenu .sns_list li a:hover {
	}
	
	.footermenu .sns_list li a:hover.ig {
		background-size: 30px 30px;
	}
	
	.footermenu .sns_list li a:hover.fb {
		background-size: 30px 30px;
	}
	
	.footermenu .sns_list li a span{
		display: none;
	}
	
	/*コピーライト*/
	.footer_copyright_box {
		display: block;
		position: relative;
		bottom: 0;
		left: auto;
		right: 0;
	}
	
	.footer_copyright_box.pc_only {
		display: block;
	}
	
	.footer_copyright {
		display: block;
	}
	
	.footer_copyright_inner {}
	
	.footer_copyright_inner p {
		font-size: 1.3rem;
		color: #000000;
		white-space: nowrap;
		line-height: 100%;
		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:url("../img/bg_pattern_green.jpg");
	
		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: "\e5ce";
		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: 600;
		color: #ffffff;
	}
	
	.pagetop a:hover {
		opacity: 0.8;
	}
	
	.pagetop a span {
		display: none;
	}
	
	/* ----------下部固定SNSリンクバナー---------- */
	
	.bottom_banner_box{
		display: block;
		position: fixed;
		right: 15px;
		left: 15px;
		bottom: 4px;
		padding: 15px;
		border: solid 4px #ffffff;
		background: url("../img/bg_pattern_green.jpg");
		border-radius: 20px;
		-webkit-border-radius: 20px;
		-moz-border-radius: 20px;
		z-index: 9999;
	}
	
	.right_margin_on{
		right: 56px;
	}
	
	.bottom_banner_box_inner{
		
	}
	
	.bottom_banner_text{
		font-size: 1.5rem;
		color: #ffffff;
		font-weight: 600;
		line-height: 150%;
		margin-bottom: 10px;
	}
	
	.bottom_banner_text br{
		display: none;
	}
	
	
	/*ul*/
	.bottom_banner_sns_list {
		display: flex;
		text-align: center;
		justify-content: center; /* 子要素をflexboxにより左右中央に配置する */
	}
	
	.bottom_banner_sns_list li {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		vertical-align: middle;
		margin-left: 0px;
		margin-right: 0px;
		white-space: nowrap;
		line-height: 100%;
		margin-right: 10px;
		margin-left: 10px;
		-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;
	}
	
	.bottom_banner_sns_list li span{
		display: inline-block;
		position: relative;
		font-size: 1.4rem;
		font-weight: 600;
		color: #ffffff;
	}
	
	.bottom_banner_sns_list li a {
		display: flex;
		position: relative;
		width: 48px;
		height: 48px;
		background-color: #ffffff;
		border-radius: 50%;
		-webkit-border-radius: 50%;
		-moz-border-radius: 50%;
	
		-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;
	}
	
	.bottom_banner_sns_list li a.ig {
		background: url("../img/icon_sns_ig.png") no-repeat center center;
		background-size: 28px 28px;
		background-color: #ffffff;
	}
	
	.bottom_banner_sns_list li a.fb {
		background: url("../img/icon_sns_fb.png") no-repeat center center;
		background-size: 28px 28px;
		background-color: #ffffff;
	}
	
	.bottom_banner_sns_list li a:hover {
	}
	
	.bottom_banner_sns_list li a:hover.ig {
		background-size: 30px 30px;
	}
	
	.bottom_banner_sns_list li a:hover.fb {
		background-size: 30px 30px;
	}
	
	
	
	.bottom_banner_close{
		display: block;
		position: absolute;
		top:-15px;
		right: -15px;
		width: 42px;
		height: 42px;
		background: url("../img/link_banner_close.png") no-repeat center center;
		background-size: contain;
		cursor: pointer;
	}
	
	.bottom_banner_close:hover{
		opacity: 0.9;
	}
	
	.bottom_banner_close span{
		display: none;
	}
	
	/*------------------------------
	スマホ
	各パーツ設定
	
	------------------------------*/
	/* -------------------- H1 -------------------- */
	h1 {
		font-size: 2.2rem;
		line-height: 140%;
	}
	
	/* -------------------- H2 -------------------- */
	h2 {
		font-size: 1.9rem;
		line-height: 140%;
	}
	
	/* -------------------- H3 -------------------- */
	h3 {
		font-size: 1.7rem;
		line-height: 140%;
	}
	
	/* -------------------- 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: 110% !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;
	}
	
	/*スマホのみ左右中央揃えの指定　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;
	}
	
	/* ---------- 画像配置関連 キャプション付きの回し込み ---------- */
	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を記述する*/
	
	table:not(.no_responsive_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) tbody tr {
		display: block;
		position: relative;
		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) tbody tr th,
	table:not(.no_responsive_table) tbody tr td {
		display: block;
		padding: 4px 5px 0px 5px !important;
		margin-bottom: 4px !important;
		/*background-color: #EDEDE9;*/
		/*white-space: nowrap;*/
		overflow: hidden;
		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) td {}
	
	table:not(.no_responsive_table) td:nth-of-type(1) {
		color: #686868;
	}
	
	.pb0,
	table:not(.no_responsive_table) td.pb0 {
		padding-bottom: 0px !important;
	}
	
	table.no_responsive_table {
	}
	
	/*レスポンシブさせないテーブルのフォントはちょっと小さくする*/
	table.no_responsive_table tr {
		display: table-row;
		vertical-align: inherit !important;
		margin-bottom: 0px !important;
		border-bottom: #e8e8e8 solid 1px !important;
	}
	
	table.no_responsive_table tr th {
		display: table-cell !important;
	}
	
	table.no_responsive_table tr td {
		display: table-cell !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.6rem !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).noline,
	table:not(.no_responsive_table).noline tr,
	table:not(.no_responsive_table).noline td,
	table:not(.no_responsive_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: 15px 15px 15px 15px !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: 15px 15px 15px 15px !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;
		margin-top: 0px;
	}
	
	.box_bg_emerald {
		padding: 15px 15px 15px 15px;
		margin-top: 0px;
	}
	
	/*「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;
	}
	
	/* ---------- 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 45px 9px 20px;
		width: auto;
	}
	
	.button:hover {
		text-decoration: none !important;
	}
	
	.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 {
		display: block;
		position: relative;
		margin: 0 auto;
		margin-top: 0px;
		padding-bottom: 90px;
		margin-bottom: 60px;
		z-index: 1;
	}
	
	.mainvisual_box {

	}
	
	/*「.slick-slider」*/
	.main_visual{
		display: flex; /* 追加 */
		align-items: center; /* 追加 */
		
		width: 96%;
		margin: 0 0 0 auto;
		max-height: 760px;
		
		z-index: 1;
	}
	
	.slick-list{
		overflow: hidden;
		border-radius: 0px 0 0 30px;
		-webkit-border-radius: 0px 0 0 30px;
		-moz-border-radius: 0px 0 0 30px;
		max-height: 740px;
		background-color: #ffffff;
	}
	
	
	.slick-list{
		
	}
	
	.slick-slide{
	
	}
	
	.main_visual_1box{
		width: 100%;
		padding-bottom: 65%;
		/*min-height: 50vh;*/
		max-height: 740px;
		overflow: hidden;
	}
	
	
	.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: 104%;
		height: auto;
	}
	
	
	/* dotsを丸くカスタマイズするCSS */
	.dots-wrap {
			display: flex;
			position: relative;
			justify-content: center;
			z-index: 3;
	}
	
	.dots-wrap li {
		display: inline-block;
		position: relative;
			width: 8px;
			height: 8px;
			margin: 10px 4px 0px 4px;
			background: #bc6;
			border-radius: 50%;
			cursor: pointer;
	}
	
	.dots-wrap li:hover,
	.dots-wrap li.slick-active {
			background: rgb(113, 174, 106);
	}
	.dots-wrap li button {
			display: none;
			-webkit-appearance: none;
			-moz-appearance: none;
			appearance: none;
			outline: none;
			padding: 0;
			border: none;
			background-color: transparent;
	}
	
	.mainvisual_bg{
		display: inline-block;
		position: absolute;
		width: 96%;
		bottom: -100px;
		top:116px;
		background: url("../img/bg_pattern_litegreen.jpg") center center;
		background-color: #dee6bf;
		border-radius: 0px 0 40px 0;
		-webkit-border-radius: 0px 0 40px 0;
		-moz-border-radius: 0px 0 40px 0;
		z-index: 0;
	}
	
	.mainvisual_text_box{
		display: flex; /* 子要素をflexboxで揃える */
		justify-content: center; /* 子要素をflexboxにより左右中央に配置する */
		align-items: center;  /* 子要素をflexboxにより上下中央に配置する*/
		position: absolute;
		width: 88%;
		bottom: 0px;
		top:auto;
		left: 3%;
		right: 8%;
		-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_hokkaido{
		display: inline-block;
		position: relative;
		height: auto;
		text-align: center;
		top:auto;
		left: auto;
		right: auto;
		width: 30%;
		z-index: 3;
		margin-bottom: 10px;
		
		-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_hokkaido img{
		max-height: 280px;
	}
	
	.mainvisual_catchcopy_box{
		display: flex; /* 子要素をflexboxで揃える */
		z-index: 0;
	}
	
	
	.mainvisual_catchcopy{
		display: inline-block;
		position: relative;
		background: url("../img/main_catchcopy.png") no-repeat left top;
		background-size: contain;
		width: 68%;
		height: 70px;
		bottom: auto;
		left: auto;
		margin-left: 15px;
		z-index: 3;
		
		-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{
		display: none;
	}
	
	/*画面幅1200px未満*/
	@media (max-width: 1200px) {
		.mainvisual_catchcopy{
			bottom: 7%;
		}
	}
	
	/*画面幅900px未満*/
	@media (max-width: 900px) {
		.mainvisual_catchcopy{
			bottom: 5%;
		}
	}
	
	.visual_navi_box{
		display: none;
		/*
		display: block;
		position: absolute;
		bottom: 0;
		left: 0px;
		right: 0px;
		*/
	}
	
	
	
	/*--------------- トップページ構成要素の共通パーツ ---------------*/
	
	
	
	
	/*--------------- トップページのイントロダクション、事業紹介、所在地 ---------------*/
	
	/*イントロダクション*/
	.frontpage_about {
		display: block;
		position: relative;
		margin: 0 auto;
		margin-bottom: 0px;
		padding: 0px 20px 0px 20px;
		background-color: #ffffff;
		z-index: -1;
	}
	
	/*枠の下のほうに牛を配置*/
	.frontpage_about:after {
		content:"";
		display: inline-block;
		position: absolute;
		width: 160px;
		height: 72px;
		background: url("../img/bg_img_cattle.png") no-repeat center center;
		background-size: contain;
		left: 5%;
		bottom:-60px;;
	}
	
	.frontpage_about .section_inner {
		display: block;
		position: relative;
		margin: 0 auto;
		max-width: 1320px;
	}
	
	.frontpage_introduction_content_box{
		display: block;
		position: relative;
		margin: 0 auto;
		max-width: 1060px;
	}
	
	.frontpage_introduction_content_box:before{
		content:"";
		display: inline-block;
		position: absolute;
		width: 24%;
		padding-bottom: 22%;
		background: url("../img/bg_img_potato.png") no-repeat center center;
		background-size: contain;
		margin-left: 2%;
		top:45%;
	}
	
	.frontpage_introduction_content_box:after{
		content:"";
		display: inline-block;
		position: absolute;
		width: 24%;
		padding-bottom: 30%;
		background: url("../img/bg_img_rice.png") no-repeat center center;
		background-size: contain;
		margin-right: auto;
		bottom:0%;
		right: -2%;
	}
	
	.introduction_2column{
		display:block;
		letter-spacing: normal;/* 文字間を詰めて隙間を削除する */
		position: relative;
		margin-bottom: 30px;
	}
	
	.introduction_2column .column_inner{
		display: block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
		width: 100%;
	}
	
	.introduction_2column .column_inner:nth-child(1){
		width: 100%;
		margin-bottom: 10px;
	}
	
	.introduction_2column .column_inner:nth-child(2){
		width: 100%;
		max-width: auto;
		margin-left: 0%;
	}
	
	.introduction_catchcopy{
		font-size: 2.6rem;
		font-weight: 700;
		color: rgb(23, 114, 18);
		margin-bottom: 20px;
	}
	
	.introduction_text{
		font-size: 1.65rem;
		color: #000000;
		font-weight: 500;
	}
	
	.introduction_text br{
		display: none;
	}
	
	.introduction_img{
		margin-top: 0px;
		margin-left: 0%;
		margin: 0 auto;
		width: 60%;
	}
	
	.introduction_img img{
		width: 100%;
		height: auto;
	}
	
	/*事業紹介の枠*/
	.frontpage_service_content_box{
		display: block;
		position: relative;
		background: url("../img/bg_pattern_litegreen.jpg") center center;
		background-color: #dee6bf;
		padding: 20px 20px 20px 20px;
		border-radius: 20px 20px 0px 0px;
		-webkit-border-radius: 20px 20px 0px 0px;
		-moz-border-radius: 20px 20px 0px 0px;
	}
	
	/*所在地の枠*/
	.frontpage_about_content_box{
		display: block;
		position: relative;
		background: url("../img/bg_pattern_litegreen.jpg") center center;
		background-color: #dee6bf;
		padding: 20px 20px 20px 20px;
		border-radius: 0px 0px 20px 20px;
		-webkit-border-radius: 0px 0px 20px 20px;
		-moz-border-radius: 0px 0px 20px 20px;
		margin-bottom: 60px;
	}
	
	/*事業紹介の内容*/
	.service_catchcopy{
		display: block;
		position: relative;
		text-align: left;
		font-size: 1.9rem;
		font-weight: 700;
		margin-bottom: 20px;
		color: #3E3A39;
	}
	
	.service_catchcopy br{
		display: none;
	}
	
	.service_2column{
		display:block;
		letter-spacing: normal;/* 文字間を詰めて隙間を削除する */
		position: relative;
		margin-bottom: 20px;
	}
	
	.service_2column .column_inner{
		display: block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
		padding: 20px 20px 20px 20px;
		width: 100%;
		margin-right: 0%;
		margin-bottom: 10px;
		background-color: #ffffff;
		border: solid 3px #adc44c;
		border-radius: 16px;
		-webkit-border-radius: 16px;
		-moz-border-radius: 16px;
	}
	
	.service_2column .column_inner:nth-of-type(2n){
		margin-right: 0;
	}
	
	.service_title{
		text-align: center;
		font-size: 2.0rem;
		font-weight: 700;
		margin-bottom: 5px;
		color: #0a6609;
		line-height: 120%;
	}
	
	.service_subtitle{
		text-align: center;
		font-size: 1.6rem;
		margin-bottom: 10px;
	}
	
	.service_2column .column_inner img{
		max-width: 180px;
	}
	
	.button span.pdf {
	display: inline-block;
	position: relative;
	font-size: 1.0rem;
	padding: 1px 8px 1px 8px;
	background-color: #d87968;
	top: -1px;
	margin-left: 5px;
	}
	
	/*所在地の内容*/
	.frontpage_about_content_box .content_box_inner{
		display: block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
		padding: 20px 20px 20px 20px;
		background-color: #ffffff;
		border-radius: 16px;
		-webkit-border-radius: 16px;
		-moz-border-radius: 16px;
	}
	
	.about_2column{
		display:block;
		letter-spacing: normal;
		position: relative;
		margin-bottom: 20px;
	}
	
	.about_2column .column_inner{
		display: inline-block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
		width: 100%;
		margin-right: 0%;
		margin-bottom: 20px;
	}
	
	.about_2column .column_inner:nth-of-type(2n){
		width:100%;
		margin-right: 0;
		margin-bottom: 0px;
	}
	
	.about_title{
		font-size: 2.2rem;
		color: #0a6609;
		line-height: 130%;
		margin-bottom: 20px;
	}
	
	.about_title span{
		display: block;
		position: relative;
		font-size: 1.8rem;
	}
	
	.about_address{
		line-height: 140%;
		margin-bottom: 20px;
		font-size: 1.6rem;
	}
	
	.about_tel{
		line-height: 140%;
		font-size: 1.6rem;
	}
	
	.tel_link{
		
	}
	
	.frontpage_about_content_box .map_box{
		width: calc(100% + 40px);
		margin-left: -20px;
		margin-right: -20px;
		margin-bottom: -20px;
		
		border-radius: 0px 0px 16px 16px;
		-webkit-border-radius: 0px 0px 16px 16px;
		-moz-border-radius: 0px 0px 16px 16px;
	}
	
	.frontpage_about_content_box .map_box iframe{
		border-radius: 0px 0px 16px 16px;
		-webkit-border-radius: 0px 0px 16px 16px;
		-moz-border-radius: 0px 0px 16px 16px;
	}
	
	/*無限スクロール*/
	.scroll_img_box{
		height: 130px;
		margin-bottom: 60px;
	}
	
	.infiniteslide{
		height: 130px;
	}
	
	.infiniteslide ul{
		height: 130px;
	}
	
	.infiniteslide ul li{
		display: inline-block;
		position: relative;
		margin-left: 3px;
		margin-right: 3px;
		height: 130px;
	}
	
	.infiniteslide ul li img{
		border-radius: 16px;
		-webkit-border-radius: 16px;
		-moz-border-radius: 16px;
		height: 130px;
		width: auto;
	}
	
	
	/*「お知らせ・活動報告」「現況報告並びに財務諸表等」共通タイトル*/
	.title_box{
		display: block;
		position: relative;
		margin-bottom: 20px;
	}
	
	.section_title{
		display: inline-block;
		position: relative;
		font-size: 2.1rem;
		font-weight: 700;
		margin-bottom: 0px;
	}
	
	.section_title:after{
		content:"";
		display: block;
		position: relative;
		height: 8px;
		width: auto;
		margin-top: 10px;
		background: url("../img/title_border.png") repeat-x left top;
		background-size: auto 5px;
	}
	
	
	/*お知らせ・活動報告*/
	.frontpage_info{
		display: block;
		position: relative;
		margin: 0 auto;
		margin-bottom: 0px;
		padding: 0px 20px 40px 20px;
		background-color: #ffffff;
		z-index: -1;
	}
	
	.frontpage_info .section_inner {
		display: block;
		position: relative;
		margin: 0 auto;
		max-width: 1320px;
	}
	
	.frontpage_info_content_box{
		margin: 0 auto;
		max-width: 980px;
	}
	
	.info_2column{
		display: block;
		letter-spacing: normal;
		position: relative;
	}
	
	.info_2column .column_inner{
		display: inline-block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
		width: 100%;
		margin-right: 0%;
		margin-bottom: 10px;
	}
	
	.info_2column .column_inner:nth-child(2){
		margin-right: 0%;
	}
	
	/*a*/
	.button_sns_ig,
	.button_sns_fb{
		display: flex;
		flex-direction: column; /* 子要素をflexboxにより縦並びに揃える */
		align-items: center;  /* 子要素をflexboxにより上下中央に配置する*/
		text-align: left;
		padding: 2vw 2vw 2vw 0px;
		background: url("../img/bg_pattern_green.jpg");
		background-color: #63a454;
		color: #ffffff;
		font-size: 1.9rem;
		font-weight: 600;
		
		border-radius: 16px;
		-webkit-border-radius: 16px;
		-moz-border-radius: 16px;
		line-height: 16px%;
		
		-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_sns_ig:visited,
	.button_sns_fb:visited{
		color: #ffffff !important;
	}
	
	/*span*/
	.button_sns_ig .inner,
	.button_sns_fb .inner{
		display: flex;
		position: relative;
		flex-direction: column; /* 子要素をflexboxにより縦並びに揃える */
		justify-content: flex-start; /*左寄せ（デフォルト）*/
		padding-left: 60px;
	}
	
	/*span*/
	.button_sns_ig .icon,
	.button_sns_fb .icon{
		display: flex;
		justify-content: center; /* 子要素をflexboxにより左右中央に配置する */
		align-items: center;  /* 子要素をflexboxにより上下中央に配置する*/
		position: absolute;
		width: 36px;
		height: 36px;
		background-color: #ffffff;
		border-radius: 88px;
		-webkit-border-radius: 88px;
		-moz-border-radius: 88px;
		top:calc(4px - 0px);
		left: 10px;
	}
	
	.button_sns_ig .icon img,
	.button_sns_fb .icon img{
		width: 24px;
		height: 24px;
	}
	
	/*span*/
	.button_sns_ig .small,
	.button_sns_fb .small{
		font-size: 1.5rem;
		font-weight: normal;
	}
	
	.button_sns_ig:hover,
	.button_sns_fb:hover{
		opacity: 0.9;
		color: #ffffff;
		background-color: #6cae5d;
	}
	
	
	/*現況報告並びに財務諸表等*/
	.frontpage_report{
		display: block;
		position: relative;
		margin: 0 auto;
		margin-bottom: 0px;
		padding: 40px 20px 40px 20px;
		background-color: #f6f2ed;
		z-index: -1;
	}
	
	.frontpage_report .section_inner {
		display: block;
		position: relative;
		margin: 0 auto;
		max-width: 1320px;
	}
	
	.title_box{
		
	}
	
	.frontpage_report_content_box{
		margin: 0 auto;
		max-width: 980px;
	}
	
	.report_subtitle{
		display: block;
		position: relative;
		font-size: 1.8rem;
		font-weight: 600;
		padding-bottom: 10px;
		border-bottom: solid 1px #11720c;
		border-bottom: solid 1px #11720c;
		margin-bottom: 20px;
	}
	
	.frontpage_report_content_box h4{
		color: #11720c;
		font-size: 1.9rem;
		font-weight: 600;
		margin-bottom: 0px;
	}
	
	.report_2column{
		display:block;
		letter-spacing: normal;
		position: relative;
	}
	
	.report_2column .column_inner{
		display: inline-block;
		position: relative;
		vertical-align: top;
		letter-spacing: normal;
		width: 100%;
		margin-right: 0%;
		padding: 0px 0px 0px 0px;
		border-bottom: solid 0px #11720c;
	}
	
	.report_2column .column_inner:nth-child(1){
		margin-bottom: 20px;
	}
	
	.report_2column .column_inner:nth-child(2){
		margin-right: 0%;
	}
	
	
	/*ul*/
	.report_list{
		
	}
	
	.report_list li{
		
	}
	
	.report_list li a{
		display: block;
		position: relative;
		font-size: 1.6rem;
		font-weight: 600;
		padding-left: 28px;
	}
	
	.report_list li a:before{
		font-family: "Material Symbols Outlined";
		content: "\e5e1";
		display: inline-block;
		position: absolute;
		overflow: hidden;
		top:4px;
		left: 0;
		color: #ffffff;
		background-color: #66aa64;
		font-size: 10px;
		width: 18px;
		height: 20px;
		text-align:center;
		padding-left: 2px;
		line-height: 20px;
		border-radius: 50%;
		-webkit-border-radius: 50%;
		-moz-border-radius: 50%;
	}
	
	.report_list li a:hover{
		text-decoration: underline;
		color: #11720c;
	}
	
	/*--------------------------------
	スマホ
	「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;
	}

	.header_inner {
		height: 100px;
	}


	.main_menu {}

	.sub_menu_box {
		display: flex;
	}

/* --------------------グランドメニュー（ドロワーメニュー）-------------------- */

	.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 40px 30px 40px;
	}

	.footer_shop {
		display: block;
		width: 100%;
	}

/* ----------ページTOPへボタン---------- */
	#pagetop_wrapper {
		display: none !important;
	}


/*--------------------------------
	プリント
	トップページ専用スタイル
	
	--------------------------------*/
/*--------------- トップページのみのスタイル（メインビジュアル） ---------------*//*section*/
	.mainvisual_area {
		height: auto !important;
		margin-bottom: 40px;
	}

	.frontpage_service {
		padding-left: 80px;
		padding-right: 80px;
	}

	.frontpage_news,
	.frontpage_about,
	.frontpage_facility {
		padding-left: 40px;
		padding-right: 40px;
	}
/*トップ未満のページ*/

	.contents_all {
		margin-top: 0px;
	}

	.contents_main {
		padding-left: 40px;
		padding-right: 40px;
	}

}

/*@media printここまで*/
