﻿@charset "utf-8";
/*
Theme Name: yosanogolf
Description: Copyright(C) 与謝野町ゴルフ協会 All right reserved.
Version: 1.0
Author: 与謝野町ゴルフ協会
Author URI: 
*/

/*※一括数値設定の順序は、左から「上」「右」「下」「左」*/

html {
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	margin: 0 auto;
	padding: 0;
	height: 100%;
}
body {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: left;
	vertical-align: top;
	word-break: normal;
	word-wrap: break-word;
	font-size: 12pt;
	font-family: "メイリオ", Meiryo,"游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Helvetica Neue",sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-print-color-adjust: exact;
	line-height: 1.5;
	color: #333;
	background-color: #FFF;
}
@media screen and (max-width: 767px) {
body {
	margin: 0 auto;
	padding: 0;
	position: absolute;  /* またはfixed */
	overflow: auto;
	max-width: 767px;
}
}

*:not(ul),div.caution>ul,header ul,div.footer ul,*:before, *:after {
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

@media screen and (max-width: 767px) {
/* スマホでのみ表示される */
.pconly {
	margin: 0;
	padding: 0;
	display: none !important;
}
.sponly:not(h1):not(h2) {
	margin: 0;
	padding: 0;
}
}
/* パソコンでのみ表示される */
@media screen and (min-width:1020px) {
.pconly {
	margin: 0;
	padding: 0;
}
.sponly {
	margin: 0;
	padding: 0;
	display: none !important;
}
}

hr {
	margin: 2em auto;
	padding: 0;
	content: "";
	width: 100%;
	height: 1px;
	background-color: #CCC;
	display: block;
	border: none;
}
page {
	vertical-align: top;
	text-align: center;
}

a,a:visited {color: #693;}
a:hover,a:focus,a:active {
	color: #693;
	-webkit-transition: all 0.2s ease-in-out 0s;
	transition: all 0.2s ease-in-out 0s;
}
p:empty{display: none}
img {
	width: auto;
	height: auto;
	border: none;
	white-space: pre;
}
a img {
	color: inherit;
	text-decoration: none;
}
a img:hover,a img:focus {
	opacity: 0.5;
	-webkit-opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)";/* IE 8 */
}
figure {
	text-align: center;
	vertical-align: top;
	margin: 0;
	padding: 0;
	overflow: visible;
	position: relative;
	display: block;
	  width: 100%;
	  height: auto;

}
figure img {
	vertical-align: top;
	position: relative;
	margin: 0 auto;
	padding: 0;
	display: block;
	  width: 100%;
	  height: auto;

}
table tr td figure {
	  width: 100%;
	  height: auto;
}
table tr td figure img {background-color: #FFF;}
table tr td figure figcaption {font-weight: bold;}
figure figcaption {
	text-align: center;
	margin: 0.5em auto;
	padding: 0 0;
	line-height: 1;
	width: 100%;
	display: block;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis; /* Safari */
	-o-text-overflow: ellipsis; /* Opera */
}
figure figcaption div {
	position: relative;
	width: 100%;
	display: block;
}
figure figcaption div p.text {display: inline;}

svg {fill: currentColor;}
div.main_container p {
	width: 100%;
	display: block;
	margin: 0 0 1em 0;
}

div {
	vertical-align: top;
	box-sizing: border-box;
	border-collapse: collapse;
}
dl dd p:last-child {margin-bottom: 0;}
dl dd:not(dl dt) {}

div.table,
div.table table {margin: 0 auto 1em auto;}
table {
	width: 100%;
	margin: 0 auto 1em auto;
	padding: 0;
	border-collapse: collapse;
	table-layout: fixed;
	border: 1px solid #999;
	background-color: #FFF;
	text-align: center;
	vertical-align: middle;
	line-height: 1.25;
}
table tr th,
table tr td {
	border-collapse: collapse;
	margin: 0;
	border: 1px solid #999;
}
table tr th:empty,
table tr td:empty {
	height: 2em;
}
table tr th {
	padding: 0.25em;
	text-align: center;
	font-weight: normal;
	background-color: #F3F3F3;
}
table tr td {
	padding: 0.25em;
	text-align: center;
	font-weight: normal;
}
section#company_about table tr td {text-align: left;}
table td > table {
	width: auto !important;
	border: none;
	margin: 0;
}
table caption {
	font-weight: bold;
	caption-side: top;
	text-align: center;
	margin: 0 auto;
	padding: 0.25em 0.5em;
}

ol,ul {
	vertical-align: top;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
	box-sizing: border-box;
	border-collapse: collapse;
	margin: auto;
}
ol:before,ul:before {
	letter-spacing: normal;/* 文字間を通常に戻す */
}
ul {
	-webkit-padding-start: 20px;
}
ol li,ul li {
	vertical-align: top;
	position: relative;
	letter-spacing: normal;/* 文字間を通常に戻す */
	box-sizing: border-box;
	border-collapse: collapse;
	margin: auto;
}
ul>li ul {
	list-style: disc outside;
/*
	margin: 0 0 0 1em;
	padding: 0;
*/
}
ul>li ul>li:before {content: "";}
ul,ul ul,ul>li ul>li {list-style: disc outside;}
ol,ol ol {list-style: decimal outside;}
/*自由な番号表記を使いたい時用ここから*/
ol>li {
	list-style: none; /*標準の番号を消す*/
	counter-increment: number;
	margin: 0 0 0 2em;
	position: relative;
}
ol>li:before,
ol>li>ol>li:before {
	content: counter(number)".";/*自由な番号表記を使う*/
	width: 2em;
	text-align: left;
	display: inline-block;
	margin: 0 0.25em 0 0;
	padding: 0;
	position: absolute;
	left: 0;
	-webkit-transform: translateX(-100%);
	-ms-transform: translateX(-100%);
	transform: translateX(-100%);
}
/*自由な番号表記を使いたい時用ここまで*/
ol>li>ul,ol>li>ol,ul>li>ol {
	margin: 0.5em 0;
	counter-reset: number;
}
ol>li>ul>li,ol>li>ol>li {
	margin: 0 0 0 20px;
	padding: 0 0 0 0.25em;
	font-weight: normal;
	counter-reset: number;
}
ol>li>ul>li {counter-increment: none;}
ol>li>ul>li:before {content: none;}
menu,dir {-webkit-padding-start: 0;}
table tr td ol,
table tr td ul,
dl dd ul {
	text-align: left;
	-webkit-padding-start: 20px;
}

sup {
	font-size: 75%;
	line-height: initial;
	vertical-align: top;
	color: inherit;
}
nav ul,
nav ul li {
	list-style: none;
}

dl,dt, dd {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
ul li dl {
	margin: 0;
	padding: 0;
	width: 100%;
	display: block;
}
dl dd #comment {
	font-weight: normal;
	text-align: left;
}
iframe {
	border-collapse: collapse;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
form {
	padding: 0;
	margin: 0 auto;
	width: 100%;
	display: block;
	text-align: center;
	vertical-align: top;
}
form table {text-align: left;}
input {
	padding: 0;
	margin: 0 auto;
}
input, textarea, select, button {
	font-size: inherit;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
textarea {
	width: 100%;
	display: block;
	margin: 0 auto 0.5em auto;
}
input[type=text],
input[type=email] {
	width: 100%;
	display: inline-block;
	margin: 0 auto 0.5em auto;
}
label {
	width: auto;
	margin: 0 1em 0 0;
	padding: 0;
	display: inline-block;
}

/*ヘッダー用*/
header {
	text-align: center;
	width: 100%;
	margin: 0 auto;
	padding: 0;
}
header a,
header a:hover,
header a:focus {
	text-decoration: underline;
}
header .description {
	width: 100%;
	font-size: 75%;
	margin: 0 auto 0.5em auto;
	padding: 0.25em 0;
}
header div.container,
header div.container div.inner {
	text-align: center;
	vertical-align: top;
	width: 100%;
	max-width: 960px;
	padding: 0;
	overflow: hidden;
}
header div.container {margin: 0 auto;}
header div.container div.inner {margin: 1em auto;}
header div.container div.inner div.logo,
header div.container div.inner div.logo img {
	width: 240px;
	height: auto;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	vertical-align: top;
}

@media screen and (max-width: 767px) {
header nav.menu {display: none;}
}
@media screen and (min-width: 1020px) {
/*メインメニューボタン*/
header nav.menu {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	position: sticky;
	background-color: #030;
}
header nav.menu:before, header nav.menu:after {z-index: -1;}
header nav.menu ul,
header nav.menu ul li {
	padding: 0;
	list-style: none;
	box-sizing: content-box;
	line-height: 1.25;
}
header nav.menu ul {
	margin: 0 auto;
	width: 100%;
	max-width: 960px;
	z-index: 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
header nav.menu ul li {
	margin: 0;
	display: inline-block;
	-webkit-flex-grow: 1;
	flex-grow: 1;
}
header nav.menu ul li span {
	margin: auto;
	padding: 0.25em 0;
	width: 100%;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
header nav.menu ul li a {
	color: #FFF;
	text-decoration: none;
	width: 100%;
	height: 100%;
	min-height: 60px;
	display: block;
	margin: 0 auto;
	padding: 0;
	position: relative;
}
header nav.menu ul li:hover,
header nav.menu ul li:focus {
	background-color: #363;
}
}

/*フッター用*/
div.footer {
	color: #FFF;
	text-align: center;
	vertical-align: top;
	width: 100%;
	margin: 2.5em auto 0 auto;
	padding: 0.5em 0;
	background-color: #030;
	position: relative;
}
div.footer a {color: #FFF;}
div.footer a:hover,
div.footer a:focus {
	color: inherit;
	text-decoration: underline;
}
div.footer div.container div.inner {
	text-align: center;
	overflow: hidden;
	display: block;
}
div.footer div.copyright {
	font-size: 75%;
	padding: 0.5em 0;
	border-top: 1px solid rgba(255,255,255,0.5);
}
div.footer div.container div.inner div.logo,
div.footer div.container div.inner div.logo img {
	width: 240px;
	height: auto;
	margin: 0 auto;
	padding: 0;
}
/*フッタメニューボタン*/
div.footer nav.menu {
	width: 100%;
	text-align: center;
	vertical-align: middle;
	margin: 0 auto;
	padding: 0;
}
div.footer nav.menu:before, footer nav.menu:after {z-index: -1;}
div.footer nav.menu ul,
div.footer nav.menu ul li {
	text-align: left;
	list-style: none;
	line-height: 1.5;
}
div.footer nav.menu ul {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	max-width: 960px;
	display: block;
	z-index: 0;
}
div.footer nav.menu ul:not(:first-child) {margin: 0.5em auto 0 auto;}
div.footer nav.menu ul li {
	margin: 0 2.5%;
	width: 45%;
	display: inline-block;
}
@media screen and (min-width: 1020px) {
div.footer nav.menu ul,
div.footer nav.menu ul li {
	text-align: center;
	list-style: none;
	line-height: 1.5;
}
div.footer nav.menu ul li {
	margin: 0;
	width: auto;
	display: inline-block;
}
div.footer nav.menu ul li:not(:first-child):before {
	content: "｜";
	display: inline;
	margin: 0;
	padding: 0;
	color: rgba(255,255,255,0.5);
}
}
div.footer nav.menu ul li:focus a, 
div.footer nav.menu ul li:hover a,
div.footer nav.menu > ul li:focus,
div.footer nav.menu > ul li:hover {
	color: inherit;
}

/*ヘッダ・フッタ共通設定*/
header div.container,
div.footer div.container {
	margin: 1em auto;
	padding: 0;
	display: block;
	text-align: center;
	width: 100%;
	max-width: 960px;
}
header div.container div.inner,
div.footer div.container div.inner {
	padding: 0;
	display: block;
	text-align: center;
	width: 100%;
	max-width: 960px;
}
header div.container div.inner {margin: 0 auto;}
div.footer div.container div.inner {margin: 1em auto;}
header div.container div.inner div.company,
div.footer div.container div.inner div.company {
	padding: 0;
	display: block;
	width: 100%;
	text-align: center;
	vertical-align: top;
}
header div.container div.inner div.company,
header div.container div.inner div.counter {
	margin: 0 auto;
}
div.footer div.container div.inner div.company,
div.footer div.container div.inner div.counter {
	margin: 0;
},
header div.container div.inner div.counter,
div.footer div.container div.inner div.counter,
header div.container div.inner div.link,
div.footer div.container div.inner div.link {
	margin: 0 auto;
	padding: 0;
	display: block;
	text-align: center;
	line-height: 1.5;
}
@media screen and (max-width:767px) {
div.footer div.container div.inner div.link  {
	display: none;
}
}
@media screen and (min-width:1020px) {
header div.container div.inner,
div.footer div.container div.inner {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	align-items: center;
}
header div.container div.inner div.company,
div.footer div.container div.inner div.company,
header div.container div.inner div.link,
div.footer div.container div.inner div.link,
header div.container div.inner div.counter,
div.footer div.container div.inner div.counter {
	margin: 0 auto;
	padding: 0;
}
}
header div.container div.inner div>div ul,
header div.container div.inner div>div ul li,
div.footer div.container div.inner div>div ul,
div.footer div.container div.inner div>div ul li {
	list-style: none;
}
header div.container div.inner div>div.tel ul li,
header div.container div.inner div>div.fax ul li,
div.footer div.container div.inner div>div.tel ul li,
div.footer div.container div.inner div>div.fax ul li {
	display: inline-block;
	margin: 0 auto;
}
header div.container div.inner div>div.tel ul li a {}
div.footer div.container div.inner div>div.tel ul li a {color: #FF6;}
header div.container div.inner div>div.hour ul,
div.footer div.container div.inner div>div.hour ul {
	margin: 0 auto;
	padding: 0;
	display: inline-block;
	text-align: center;
}
header div.container div.inner div>div.hour ul li,
div.footer div.container div.inner div>div.hour ul li {
	display: block;
	margin: 0 auto;
	padding: 0 0.5em;
	text-align: left;
	font-size: 100%;
}
header div.container div.inner div>div.add,
div.footer div.container div.inner div>div.add,
header div.container div.inner div>div.hour,
div.footer div.container div.inner div>div.hour {
	font-size: 87.5%;
}
header div.container div.inner div>div.tel,
div.footer div.container div.inner div>div.tel {
	font-weight: bold;
	font-size: 150%;
	line-height: 1;
}
/*ヘッダ・フッタの連絡先*/
header div.counter a,
header div.counter a:focus,
header div.counter a:hover {}
header div.tel ul li a:before {color: #999;}
div.footer div.tel ul li a:before {color: inherit;}
header div.container div.inner div>div.sns,
div.footer div.container div.inner div>div.sns {
	display: block;
	margin: 0 auto;
	padding: 0.25em 0;
	vertical-align: middle;
}
header div.container div.inner div>div.sns ul,
div.footer div.container div.inner div>div.sns ul {
	width: auto;
	max-width: 960px;
	display: inline-block;
	line-height: 1;
	list-style: none;
	margin: 0 auto;
	vertical-align: inherit;
}
header div.container div.inner div>div.sns ul li,
div.footer div.container div.inner div>div.sns ul li {
	font-size: 100%;
	display: inline-block;
	margin: 0 2px;
	vertical-align: inherit;
}
header div.container div.inner div>div.sns ul li:focus,
header div.container div.inner div>div.sns ul li:hover,
div.footer div.container div.inner div>div.sns ul li:focus,
div.footer div.container div.inner div>div.sns ul li:hover {
	color: inherit;
	opacity: 0.5;
	-webkit-opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)";/* IE 8 */
}
/*ヘッダ・フッタの外部リンクバナー*/
header div.inner div.link ul,
header div.inner div.link ul li,
div.footer div.inner div.link ul,
div.footer div.inner div.link ul li {
	text-align: center;
	list-style: none;
}
header div.inner div.link ul,
div.footer div.inner div.link ul {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	display: block;
}
header div.inner div.link ul li,
div.footer div.inner div.link ul li {
	display: inline-block;
	margin: 0 0.25em;
}
header div.inner div.link ul li a,
div.footer div.inner div.link ul li a {
	color: inherit;
	text-decoration: none;
	display: block;
}
header div.inner div.link ul li a:focus,header div.inner div.link ul li a:hover,
div.footer div.inner div.link ul li a:focus,div.footer div.inner div.link ul li a:hover {
	opacity: 0.5;
	-webkit-opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)";/* IE 8 */
}
header div.inner div.link ul li dl,header div.inner div.link ul li dl dt,header div.inner div.link ul li dl dd,
div.footer div.inner div.link ul li dl,div.footer div.inner div.link ul li dl dt,div.footer div.inner div.link ul li dl dd {
	margin: 0 auto;
	display: block;
}
header div.inner div.link ul li dl dt,
div.footer div.inner div.link ul li dl dt {
	color: #FFF;
	font-size: 150%;
	width: 50px;
	height: 50px;
	/*border-radius*/
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	position: relative;
}
header div.inner div.link ul li dl dt {color: #FFF;}
div.footer div.inner div.link ul li dl dt {color: #030;}
header div.inner div.link ul li:first-child dl dt {background-color: #693;}
header div.inner div.link ul li:nth-child(2) dl dt {background-color: #363;}
div.footer div.inner div.link ul li dl dt {background-color: #FFF;}
header div.inner div.link ul li dl dd,
div.footer div.inner div.link ul li dl dd {font-size: 75%;}
header div.inner div.link ul li dl dt span,
div.footer div.inner div.link ul li dl dt span {
	position: absolute;
	top: 50%;
	left: 50%;
	display: inline-block;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	z-index: +1;
}
header div.container div.inner div.link ul li img,
div.footer div.inner div.link ul li img {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
}

/*スライドショー＆トップ画像*/
section#topimage,
section#slideshow {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	height: auto;
	display: block;
	overflow: hidden;
	text-align: center;
	vertical-align: middle;
	position: relative;
}
section#topimage ul li img,
section#slideshow img {
	margin: 0 auto;
	padding: 0;
	display: block;
	width: 100%;
	height: auto;
	z-index: -3;
	object-fit: cover;/* この一行を追加するだけ！ */
	font-family: 'object-fit: cover;'; /*IE対策*/
}
section#topimage ul li img,
section#slideshow img {
	height: 500px;
	max-height: 500px;
	max-height: 50vw;
}
/*
*/
section#topimage:before,section#topimage:after,
section#slideshow:before,section#slideshow:after {
	position: absolute;
}
section#slideshow figure figcaption {
	color: #FFF;
	font-size: 10pt;
	font-weight: initial;
	line-height: initial;
	text-align: center;
	margin: 0 auto;
	padding: 0;
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
	display: block;
	text-shadow: 1px -1px 2px rgba(0,0,0,0.5),1px 1px 2px rgba(0,0,0,0.5),
		     1px 0 2px rgba(0,0,0,0.5),-1px 0 2px rgba(0,0,0,0.5),
		     -1px -1px 2px rgba(0,0,0,0.5),-1px 1px 2px rgba(0,0,0,0.5);
	background-color: transparent;
}
section#slideshow sup {
	color: inherit;
	vertical-align: baseline;
	display: inline-block;
}
section#slideshow figure figcaption sup {
	font-size: inherit;
	margin: 0 0.5em;
	padding: 0;
}
@media screen and (min-width:1020px) {
section#slideshow figure figcaption {
	text-align: right;
	padding: 0 2.5em;
}
}
section#slideshow .text {
	font-size: 200%;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 2px;
	width: 100%;
	color: #FFF;
	z-index: +1;
	text-decoration: none;
	text-shadow: 1px -1px 7px rgba(0,0,0,0.5),1px 1px 7px rgba(0,0,0,0.5),
		     1px 0 7px rgba(0,0,0,0.5),-1px 0 7px rgba(0,0,0,0.5),
		     -1px -1px 7px rgba(0,0,0,0.5),-1px 1px 7px rgba(0,0,0,0.5);
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);/* Safari用 */
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	margin: 0;
	padding: 0;
}
section#slideshow .text sup {
	color: inherit;
	vertical-align: baseline;
	font-size: 50%;
}
@media screen and (min-width:1020px) {
section#slideshow .text {
	font-size: 500%;
	line-height: 1.25;
}
}
section#topimage ul,
section#slideshow>ul {
	margin: 0 auto;
	padding: 0;
	list-style: none;
	position: relative;
}
section#topimage ul li,
section#slideshow ul>li {
	list-style: none;
}

/*メインコンテナ*/
div.main_container {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0;
	display: block;
	min-height: 700px;
	text-align: center;
	vertical-align: top;
	overflow: hidden;
}
div.main_container section {
	width: 100%;
	height: auto;
	-webkit-print-color-adjust: exact;
	border-collapse: collapse;
	box-sizing: border-box;
	display: block;
	text-align: center;
	vertical-align: top;
	margin: 0 auto;
	padding: 2.5em 0;
}
div.main_container>section:first-child {}
div.main_container>section:last-child {}
div.main_container section div.container,
div.main_container section div.container div[class*="inner"] {
	height: auto;
	padding: 0;
	display: block;
	/*overflow: hidden;*/
}
div.main_container section div.container {
	width: 95%;
	max-width: 960px;
	height: auto;
	display: block;
	margin: 0 auto 2.5em auto;
	text-align: center;
	vertical-align: top;
}
div.main_container section div.container:only-child,
div.main_container section div.container div[class*="inner"]:only-child,
div.main_container section div.container:last-child,
div.main_container section div.container div[class*="inner"]:last-child,
div.main_container section div.container div[class*="inner"]:last-child {margin: 0 auto !important;}
div.main_container section div.container div[class*="inner"] {
	width: 100%;
	height: auto;
	display: block;
	text-align: left;
	vertical-align: top;
	margin: 0 auto 2.5em auto;
}
div.main_container section div.container div[class*="inner"] div[class*="box_"] {
	height: auto;
	min-height: 1em;
	margin: 0 0 1em 0;
	padding: 0;
	display: block;
	/*overflow: hidden;*/
	vertical-align: top;
}
div.main_container section div.container div[class*="inner"] div.box_photo {
	text-align: center;
	position: relative;
}
div.main_container section div.container div[class*="inner"] div.box_photo img {
	width: 100%;
	height: auto;
	max-height: 350px;
	object-fit: cover;/* この一行を追加するだけ！ */
	font-family: 'object-fit: cover;'; /*IE対策*/
	display: block;
	margin: 0 auto 1em auto;
	padding: 0;
	background-color: #FFF;
}
div.main_container section div.container div[class*="inner"] div.box_photo:empty {
	background-color: #CCC;
	min-height: 260px;
}
div.main_container section div.container div[class*="inner"] div.box_text {
	position: relative;
	text-align: left;
}
@media screen and (min-width:1020px) {
div.main_container section div.container,
div.main_container section div.container div[class*="inner"] {
	width: 100%;
	max-width: 960px;
}
div.main_container section div.container div[class*="inner"] {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	align-items: flex-start;
}
div.main_container section div.container div.inner_l {
	-webkit-flex-direction: row;
	flex-direction: row;
}
div.main_container section div.container div.inner_r {
	-webkit-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
div.main_container section div.container div[class*="inner"] div[class*="box_"]:nth-last-child(-n + 2):first-child, div.main_container section div.container div[class*="inner"] div[class*="box_"]:nth-last-child(-n + 2):first-child ~ div[class*="box_"] {margin-bottom: 0;}
div.main_container section div.container div[class*="inner"] div[class*="box_"] {width: 47.5%;}
div.main_container section div.container div.inner_l div[class*="box_"]:nth-child(odd) {margin-right: 5%;}
div.main_container section div.container div.inner_r div[class*="box_"]:nth-child(odd) {margin-left: 5%;}
div.main_container section div.container div[class*="inner"] div[class*="box_"]:only-child {
	width: 100%;
	margin: 0 auto;
}
}

/*パンくずリンク*/
div.pankuzulink,
div.pankuzulink ul {
	width: 100%;
	display: block;
	text-align: left;
}
div.pankuzulink {
	font-size: 87.5%;
	margin: 0 auto;
	padding: 0.25em 0;
	background-color: #F3F3F3;
}
div.pankuzulink ul {
	margin: 0 auto;
	padding: 0;
	max-width: 960px;
}
div.pankuzulink ul li {
	width: auto;
	margin: 0 auto;
	padding: 0;
	display: inline-block;
}
div.pankuzulink ul li:not(:first-child):before {
	content: ">";
	margin: 0 0.5em;
	padding: 0;
	display: inline;
}

/*お問い合わせフォーム用*/
section[id*="contact"] {}
section[id*="contact"] div.container {}
section[id*="contact"] div.container div[class*="inner"] div.table table caption {color: #4c6673;}
section[id*="contact"] div.table table tr th {
	width: 25%;
	background-color: #F3F3F3;
}
section[id*="contact"] div.table table tr td {text-align: left;}
@media screen and (min-width:1020px) {section[id*="contact"] table tr th span:first-child {width: 6em;}}
section[id*="contact"] table tr th span.red {
	width: auto;
	display: block;
}

/*フロントページ用　メニュー*/
section#front_menu {}
section#front_menu div.container {}
section#front_menu div.front_menu,
section#front_menu div.front_menu ul,
section#front_menu div.front_menu ul li {
	margin: 0 auto;
	padding: 0;
	text-align: center;
	vertical-align: top;
	width: 100%;
	display: block;
	list-style: none;
}
section#front_menu div.front_menu ul li dl {
	margin: 0 auto;
	padding: 0;
	text-align: center;
	vertical-align: middle;
	width: 100%;
	min-height: 200px;
}
section#front_menu div.front_menu ul li dl dt,
section#front_menu div.front_menu ul li dl dd {
	width: 100%;
	display: block;
	margin: 0;
	vertical-align: middle;
}
@media screen and (max-width:767px) {
section#front_menu div.front_menu ul li dl {display: block;}
section#front_menu div.front_menu ul li:nth-child(odd) dl,
section#front_menu div.front_menu ul li:nth-child(even) dl {
	width: 100%;
	display: block;
}
}
@media screen and (min-width:1020px) {
section#front_menu div.front_menu ul li dl {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center;
}
section#front_menu div.front_menu ul li:nth-child(odd) dl {
	-webkit-flex-direction: row;
	flex-direction: row;
}
section#front_menu div.front_menu ul li:nth-child(even) dl {
	-webkit-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
section#front_menu div.front_menu ul li dl dt,
section#front_menu div.front_menu ul li dl dd {
	width: 50%;
}
}
section#front_menu div.front_menu ul li dl dt{padding: 0;}
section#front_menu div.front_menu ul li dl dt img{
	width: 100%;
	height: auto;
	display: block;
}
section#front_menu div.front_menu ul li dl dd{
	padding: 2em;
}
section#front_menu div.front_menu ul li div.title,
section#front_menu div.front_menu ul li div.comment {
	color: inherit;
	display: block;
}
section#front_menu div.front_menu ul li div.title {
	margin: 0 auto 1em auto;
	color: #030;
	border: solid 1px #030;
	padding: 0.5em;
}
section#front_menu div.front_menu ul li div.title:hover,
section#front_menu div.front_menu ul li div.title:focus {
	background-color: #E6F3E6;
}
section#front_menu div.front_menu ul li div.comment {
	padding: 0;
}
section#front_menu div.front_menu a {
	color: inherit;
	text-decoration: none;
}

/*リンク集*/
section#link div.site {
	margin: 0 auto;
	padding: 0;
	text-align: center;
	width: 100%;
	display: block;
}
section#link div.site ul {
	list-style: none;
	width: auto;
	margin: 0.5em auto;
	padding: 0;
	display: table;
}
section#link div.site ul li {
	width: auto;
	margin: 0 1em;
	padding: 0;
	display: inline-block;
	list-style: none;
	text-align: left;
	min-width: 240px;
}
section#link div.site ul li:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f138";/*＞マーク*/
	display: inline;
	margin: 0 0.25em 0 0;
	padding: 0;
}
/*サイトマップ*/
section#sitemap div.map {
	margin: 0 auto;
	padding: 0;
	text-align: center;
	width: 100%;
	max-width: 960px;
	display: block;
}
section#sitemap div.map>ul {
	width: auto;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	max-width: 480px;
	display: block;
	text-align: left;
}
section#sitemap div.map ul li {
	width: auto;
	margin: 0 auto;
	padding: 0;
	list-style: none;
	text-align: left;
}
section#sitemap div.map ul ul li {margin: 0 1.5em;}
section#sitemap div.map ul li:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	display: inline;
	margin: 0 0.5em;
	padding: 0;
}
section#sitemap div.map>ul>li:before,
section#sitemap div.map>ul>li>ul>li:before {
	content: "\f138";/*＞マーク*/
	color: #999;
}
section#sitemap div.map>ul>li>ul>li>ul>li:before {
	content: "\f107";/*∨マーク*/
	color: #999;
}
section#sitemap div.map ul li a {
	padding: 0.5em 0;
	display: inline-block;
}
section#sitemap div.map>ul ul {
	padding: 0.5em 0;
	background-color: #FFF;
}
section#sitemap div.map>ul>li:nth-child(odd),
section#sitemap div.map>ul>li>ul>li>ul>li:nth-child(odd) {background-color: #F3F3F3;}

/*更新情報*/
section#update {}
section#update div.update,
section#update div.update>ul {
	margin: 0;
	padding: 0;
	width: 100%;
	max-width: 960px;
	display: block;
	list-style: none;
	text-align: left;
}
section#update div.update>ul>li {
	margin: 0 auto;
	padding: 0.5em 0;
	border-bottom: 1px dotted #CCC;
}
section#update div.update>ul>li dl,
section#update div.update>ul>li dl dt,
section#update div.update>ul>li dl dd {
	margin: 0;
	padding: 0;
	width: 100%;
	max-width: 960px;
	display: block;
}
@media screen and (min-width:1020px) {
section#update div.update>ul>li dl {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
section#update div.update>ul>li dl dd:nth-child(2) {order: -1;}
section#update div.update>ul>li dl dt,
section#update div.update>ul>li dl dd {
	-webkit-flex-grow: 1;
	flex-grow: 1;
}
section#update div.update>ul>li dl dt {width: 25%;}
section#update div.update>ul>li dl dd {width: 75%;}
section#update div.update>ul>li dl dt {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
}
section#update div.update>ul>li dl div {
	display: inline-block;
	margin: 0;
	padding: 0;
}
section#update div.update>ul>li dl div.date {text-align: left;}
section#update div.update>ul>li dl div.hour {text-align: right;}
section#update div.update>ul>li dl div.title {}
section#update div.update>ul>li dl div.title a {}

/*会社案内用*/
section[id*="company"] {}
section[id*="company"] div.container {}
section#company_intro {background-color: #E6F3E6;}
section#company_about table tr th {width: 25%;}

/*プライバシーポリシー用*/
section#privacypolicy {}
section#privacypolicy div.container {}
section#privacypolicy div.container ol>li>ol {
	counter-reset: my-counter;
	list-style: none;
	padding: 0;
}
section#privacypolicy div.container ol>li:only-child {
	list-style: none;
	margin: 0;
	padding: 0;
}
section#privacypolicy div.container ol>li:only-child:before {
	content: "";
	width: auto;
	margin: 0;
	padding: 0;
	position: relative;
}
section#privacypolicy div.container ol>li>ol>li:before {
	content: counter(my-counter);
	counter-increment: my-counter;
	font-size: 87.5%;
	border: 1px solid #000;
	display: block;
	text-align: center;
	line-height: 20px;
	height: 20px;
	width: 20px;
	position: absolute;
	top: 0.25em;
	white-space: nowrap;
	/*border-radius*/
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
}

/*競技情報・成績表テーブル用*/
section#golf_competition {}
section#golf_reportcard {}

section#golf_competition table,
section#golf_reportcard table {table-layout: inherit;}
section#golf_competition table tr th,
section#golf_reportcard table tr th {
	color: #FFF;
	background-color: #030;
}
section#golf_competition table tr:nth-child(odd) td,
section#golf_reportcard table tr:nth-child(odd) td {background-color: #FFF;}
section#golf_competition table tr:nth-child(even) td,
section#golf_reportcard table tr:nth-child(even) td {background-color: #E6F3E6;}

/*フレーム用*/
section div.container div.frame {
	width: 100%;
	margin: 0 auto;
	padding: 1em 2em;
	display: block;
	border: 1px solid #CCC;
	/*border-radius*/
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
section div.container div.announce {
	width: 100%;
	margin: 0 auto;
	padding: 1em 2em;
	display: block;
	border: 5px solid #F00;
	background-color: #FFF;
	/*border-radius*/
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	/* box-shadow */
	box-shadow: 2px 2px 5px 0 rgba(0,0,0,0.25);
}
section div.container div.error {
	width: 100%;
	margin: 0 auto;
	padding: 1em 2em;
	display: block;
	color: #FFF;
	background-color: #F00;
	/*border-radius*/
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

/*見出し用*/
h1,h2,h3,h4,h5 {
	width: 100%;
	display: block;
	position: relative;
	line-height: 1;
}
h1>span,h2>span,h3>span,h4>span,h5>span {
	margin: 0 auto;
	display: inline-block;
	max-width: 960px;
	line-height: 1.25;
}
h1 a,h2 a,h3 a,h4 a,h5 a,
h1 a:focus,h2 a:focus,h3 a:focus,h4 a:focus,h5 a:focus,
h1 a:hover,h2 a:hover,h3 a:hover,h4 a:hover,h5 a:hover {
	color: inherit;
	text-decoration: underline;
}
/*メイン見出し(※1ページ内に、1つまで)【google指定】*/
h1 {
	color: #030;
	text-align: center;
	font-weight: bold;
	font-size: 175%;
	margin: 0 auto;
	padding: 1em 0;
	background-color: #E6F3E6;
}
h1>span {
	margin: 0 auto;
	padding: 0;
}
/*シンプルな見出し*/
h2 {
	color: #030;
	text-align: center;
	font-weight: normal;
	font-size: 125%;
	margin: 0 auto 1em auto;
	padding: 0.5em 0;
	background-color: transparent;
	border: 1px solid #030;
}
h2>span {
	margin: 0 auto;
	padding: 0;
}
/*文頭に縦線が付く見出し*/
h3 {
	color: initial;
	text-align: left;
	font-weight: normal;
	font-size: 112.5%;
	margin: 0 auto 1em auto;
	padding: 0.25em 0 0.25em 1em;
	width: auto;
	border-left: 5px solid #030;
}
h3:after {
	content: "";
	display: block;
	border-left: solid 5px rgba(255,255,255,0.5);
	bottom: 0;
	height: 50%;
	left: 0;
	-webkit-transform: translateX(-100%);
	-ms-transform: translateX(-100%);
	transform: translateX(-100%);
	width: 5px;
	position: absolute;
}
h3>span {
	margin: 0 auto;
	padding: 0;
}
/*文頭に縦線が付く見出し(主にブログ用)*/
h4 {
	text-align: left;
	font-weight: bold;
	font-size: 100%;
	margin: 0 auto 1em auto;
	padding: 0.5em 0 0.5em 0.5em;
	border-left: 5px solid #030;
}
/*頭に■が付く見出し(主にブログ用)*/
h5 {
	text-align: left;
	font-weight: bold;
	font-size: 100%;
	margin: 0 auto 0.5em auto;
	padding: 0 0 0 1em;
	text-indent: -1em;
}
h5:before {
	color: #030;
	content: "■";
	display: inline;
	margin: 0;
	padding: 0;
}

/*新しくウィンドウが開くリンク*/
a.newopen {
	text-align: inherit;
	vertical-align: inherit;
	width: auto;
}
a.newopen:after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f35d";/*外部リンク*/
	display: inline-block;
	margin: 0 0.25em;
	padding: 0;
}
div.main_container a.newopen:after {
	color: #999;
	text-decoration: none;
}
header a.newopen:after {
	color: #999;
	text-decoration: none;
}
div.footer a.newopen:after {
	color: rgba(255,255,255,0.5);
	text-decoration: none;
}
a.newopen:focus :before,
a.newopen:hover :before {
	color: inherit;
}
/*詳しく見るボタン*/
a.readmore {
	margin: 1em auto 0 auto;
	padding: 0.5em 0;
	text-align: center;
	vertical-align: middle;
	display: block;
	color: #333;
	border: 1px solid #999;
	background-color: #FFF;
	width: auto;
	max-width: 200px;
	min-width: 200px;
}
a.readmore,
a.readmore a {
	color: #333;
	text-decoration: none;
}
a.readmore:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f138";/*＞マーク*/
	display: inline;
	margin: 0 0.25em;
	padding: 0;
}
a.readmore:focus,
a.readmore:hover {
	color: #FFF;
	background-color: #333;
}


/* ページ内で移動するボタン */
.skip_button {
	margin: 0 auto 2.5em auto;
	padding: 0;
	width: 95%;
	max-width: 960px;
	display: block;
	line-height: 1;
	text-align: center;
	vertical-align: top;
}
@media screen and (min-width:1020px) {
.skip_button {width: 100%;}
}
.skip_button ul,
.skip_button ul li {
	list-style: none;
	text-align: center;
	vertical-align: top;
	width: 100%;
	max-width: 960px;
	padding: 0;
	display: block;
}
.skip_button ul {margin: 0 auto;}
.skip_button ul li {
	margin: 0 0.25em 0.5em 0.25em;
	padding: 0;
	display: inline-block;
	width: auto;
	/*border-radius*/
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.skip_button ul li a {
	color: #030;
	text-decoration: none;
	display: block;
	margin: 0 auto;
	padding: 0;
	background-color: rgba(255,102,0,0.25);
	/*border-radius*/
	border-radius: inherit;
	-webkit-border-radius: inherit;
	-moz-border-radius: inherit;
}
.skip_button ul li span {
	display: block;
	margin: 0 auto;
	padding: 0.5em 1em;
}
.skip_button ul li span:before {
	color: #030;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f107";/*∨マーク*/
	display: inline;
	margin: 0 0.25em 0 0;
	padding: 0;
}
.skip_button ul li a:hover,
.skip_button ul li a:focus {
	cursor: pointer;
	opacity: 0.5;
	-webkit-opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)";/* IE 8 */
}

/* 違うページに移動ボタン */
.jump_button {
	margin: 1em auto;
	padding: 0;
	width: 95%;
	max-width: 960px;
	display: block;
	line-height: 1;
	text-align: center;
	vertical-align: top;
}
@media screen and (min-width:1020px) {
.jump_button {
	width: 100%;
	text-align: right;
}
}
.jump_button ul,
.jump_button ul li {
	list-style: none;
	vertical-align: top;
	padding: 0;
}
.jump_button ul {
	margin: 0 auto 0.5em auto;
	width: 100%;
	max-width: 960px;
	display: block;
}
.jump_button ul li {
	margin: 1em 0;
	padding: 0;
	display: inline-block;
	width: auto;
}
.jump_button ul li a {
	color: initial;
	text-decoration: none;
	display: block;
	margin: 0 auto;
	padding: 0;
}
.jump_button ul li span {
	display: block;
	margin: 0 auto;
	padding: 0.5em 1em;
}
.jump_button ul li span:before {
	color: #693;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f138";/*＞マーク*/
	display: inline;
	margin: 0 0.25em 0 0;
	padding: 0;
}
.jump_button ul li a:hover,
.jump_button ul li a:focus {
	cursor: pointer;
	opacity: 0.5;
	-webkit-opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)";/* IE 8 */
}

/* 違うページに移動ボタン(大) */
section[id*="banner_"] {
	margin: 0 auto 2.5em auto;
	padding: 0;
	width: 100%;
	display: block;
	text-align: center;
	vertical-align: top;
}
section#banner_index {background-color: transparent;}
section#banner_sns {
	margin: 0 auto;
	padding: 2.5em 0 5em 0;
	background-color: #F3FFF3;
}
section[id*="banner_"]>div.container {max-width: 960px;}
div[class*="banner_button"] {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	max-width: 960px;
	display: block;
	text-align: center;
	vertical-align: top;
}
div[class*="banner_button"] ul,
div[class*="banner_button"] ul li {
	list-style: none;
	text-align: center;
	vertical-align: middle;
	line-height: 1;
	width: 100%;
	max-width: 960px;
	display: block;
}
div[class*="banner_button"] ul {
	margin: 0 auto;
	padding: 0;
}
div[class*="banner_button"] ul li {
	margin: 0 auto 0.5em auto;
	padding: 0;
	display: inline-block;
	width: 100%;
	max-width: 960px;
	min-height: 63px;
	background-color: #FFF;
	/* box-shadow */
	box-shadow: 1px 1px 3px 0 rgba(0,0,0,0.5);
}
@media screen and (min-width: 1020px) {
div[class*="banner_button"] ul {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
div[class*="banner_button"] ul.block_4 li {width: 23.5%;}
div[class*="banner_button"] ul.block_3 li {width: 32%;}
div[class*="banner_button"] ul.block_2 li {width: 49%;}
div[class*="banner_button"] ul[class*="block_"] li {margin: 0 2% 1em 0;}
div[class*="banner_button"] ul.block_4 li:nth-child(4n),
div[class*="banner_button"] ul.block_3 li:nth-child(3n),
div[class*="banner_button"] ul.block_2 li:nth-child(even) {
	margin-right: 0;
}
div[class*="banner_button"] ul.block_1 li {
	width: 100%;
	margin: 0 auto 1em auto;
}
div[class*="banner_button"] ul.block_4 li:only-child,
div[class*="banner_button"] ul.block_3 li:only-child,
div[class*="banner_button"] ul.block_2 li:only-child {
	margin: 0 auto 1em auto;
}
}
div[class*="banner_button"] ul li a {
	color: inherit;
	text-decoration: none;
	display: block;
	margin: 0 auto;
	padding: 0;
}
div[class*="banner_button"] ul li img {
	width: 100%;
	height: auto;
	min-height: 63px;
	margin: 0 auto;
	padding: 0;
	display: block;
}

/* ページの先頭に戻るボタン */
#pagetop {
	position: fixed;
	bottom: 1em;
	right: 1em;
	font-size: 100%;
	line-height: 1;
	z-index: 15000;
	display: block;
}
@media screen and (max-width: 767px) {#pagetop {display: block !important;}}
#pagetop a {
	color: #FFF;
	padding: 1em 0.5em;
	text-align: center;
	text-decoration: none;
	display: block;
	width: 60px;
	height: 60px;
	background-color: #693;
	/*border-radius*/
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
}
#pagetop a:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f062";
	font-size: 200%;
	display: inline-block;
}
#pagetop a:hover,
#pagetop a:focus {
	opacity: 0.5;
	-webkit-opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)";/* IE 8 */
}

/* ユーチューブ */
div.youtube {
	width: 100% ;
	padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
	overflow: hidden;
	position: relative;
	letter-spacing: normal;/* 文字間を通常に戻す */
}
section#movie div.inner ul li div.youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	border-collapse: collapse;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
/* グーグルマップ */
.googlemap {
	margin: 0 auto;
	width: 100%;
	max-width: 960px;
	height: auto;
	padding-bottom: 75%;/* 縦横比 */
	overflow: hidden;
	position: relative;
	background-color: #E6F3E6;
}
.googlemap:empty {
	display: inline-block;
	content: "グーグルマップ";
}
.googlemap iframe,
.googlemap object,
.googlemap embed,
.googlemap iframe html {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
.gsc-search-box table {
	margin: 0;
	padding: 0;
	border-collapse: collapse;
	width: 100%;
}
.gsc-search-box table tr th,
.gsc-search-box table tr td {
	font-weight: inherit;
	border-collapse: collapse;
	margin: 0;
	padding: 0;
	overflow: visible;
}
/*エラーメッセージ*/
div.message_error {
	width: 100%;
	max-width: 960px;
	display: block;
	margin: 0 auto;
	padding: 0.25em 0;
	background-color: #FCC;
	text-align: center;
}
div.message_error h5 {color: #F00;}

.new-mark {
	margin: 0 0.5em 0 0;
	padding: 1px 0.5em;
	display: inline-block;
	font-size: 75%;
	color: #FFF;
	background-color: #693;
	/*border-radius*/
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
}
.marker {
	position: relative;
}
.marker:after {
	content: "";
	width: 100%;
	max-width: 960px;
	display: block;
	z-index: -1;
	position: absolute;
	height: 0.5em;
	bottom: 0.25em;
	left: 0;
	background: -moz-linear-gradient(right, #FFC 0%, #CF3 100%);
	background: -webkit-linear-gradient(right, #FFC 0%, #CF3 100%);
	background: linear-gradient(to left, #FFC 0%, #CF3 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFC', endColorstr='#CF3',GradientType=1 );
}
.red,.red a {color: #F00;}
.blue,.blue a {color: #00F;}
.yellow,.yellow a {color: #FF0;}

/*ブログ用*/
/* ウィジェット用基本 */
div.post_wrapper {
	width: 95%;
	display: block;
	margin: 2.5em auto;
	padding: 0;
}
div.post_wrapper div.post_main {
	width: 100%;
	display: block;
	margin: 0 auto;
	padding: 0;
}
div.post_wrapper div.post_side {
	display: block;
	margin: 0 auto;
	padding: 0;
}
div.post_wrapper div.post_side:empty {
	display: none;
	width: 0;
}
@media screen and (min-width:1020px) {
div.post_wrapper {
	width: 100%;
	max-width: 960px;
}
div.post_wrapper:after {
	float: none;
	clear: both;
	content: none;
}
div.post_wrapper div.post_main,
div.post_wrapper div.post_side {
	display: block;
	padding: 0;
}
div.post_wrapper div.post_main {
	margin: 0;
	width: 100%;
	max-width: 960px;
}
div.post_wrapper div.post_side {}
}
div.post_wrapper div.post_main>div.post_blog {
	text-align: left;
	width: 100%;
	max-width: 960px;
	display: block;
	margin: 2.5em auto;
	padding: 2.5em 0;
	min-height: 40vh;
	min-height: 400px;
	border-top: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
}
div.post_wrapper div.post_main>div.post_blog p {margin-bottom: auto;}
div.post_wrapper div.post_main div.entry_list {
	text-align: left;
	width: 100%;
	max-width: 960px;
	display: block;
	margin: 0 auto;
	padding: 0;
}
div.post_wrapper div.post_main div.entry_list>ul {
	-webkit-padding-start: 0;
	list-style: none;
	width: 100%;
	max-width: 960px;
	display: block;
	margin: 0 auto;
	padding: 0;
}
div.post_wrapper div.post_main div.entry_list>ul>li {
	-webkit-padding-start: 0;
	list-style: none;
	padding: 1em 0;
	margin: 0 auto;
	border-bottom: 1px solid #CCC;
}
div.post_wrapper div.post_main div.entry_list ul ul li,
div.post_wrapper div.post_main div.entry_list ul li li,
div.post_wrapper div.post_main div.entry_list ul li ul li {
	border: none;
}
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner {
	text-align: left;
	width: 100%;
	display: block;
	margin: 0 auto;
	padding: 0;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
}
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner div.bassui,
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner div.thumbnail {
	display: inline-block;
	padding: 0;
	letter-spacing: normal;/* 文字間を通常に戻す */
}
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner div.bassui {
	margin: 0;
	width: 100%;
	vertical-align: middle;
}
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner div.thumbnail {
	margin: 0 0 0 5%;
	min-height: 80px;
	background-color: #FFF;
	text-align: center;
	vertical-align: top;
	position: relative;
	overflow: hidden;
}
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner div.thumbnail img {
	width: 100%;
	height: auto;
	object-fit: cover;/* この一行を追加するだけ！ */
	min-height: 80px;
	background-color: #FFF;
	padding: 0;
	margin: auto;
}
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner div.thumbnail:empty {
	display: none;
}
@media screen and (min-width:1020px) {
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner div.bassui {
	margin: 0;
	display: block;
}
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner div.thumbnail {
	margin: 0 0 0 50px;
	width: 200px;
	min-height: 120px;
}
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner div.thumbnail img {
	width: 100%;
	height: auto;
	min-height: 120px;
}
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner div.bassui div.post_title,
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner div.bassui div.post_time {
	margin: 0;
	display: inline-block;
	vertical-align: middle;
}
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner div.bassui div.post_title {width: auto;}
div.post_wrapper div.post_main div.entry_list>ul>li>div.inner div.bassui div.post_time {width: 300px;}
}
div.post_wrapper div.post_main div.post_title,
div.post_wrapper div.post_main div.post_time,
div.post_wrapper div.post_main div.post_detail,
div.post_wrapper div.post_main div.entry_blogpost,
div.post_wrapper div.post_main div.post_link,
div.post_wrapper div.post_main div.entry_comments {
	text-align: left;
	width: 100%;
	max-width: 960px;
	display: block;
}
div.post_wrapper div.post_main div.post_title {
	font-size: 125%;
	font-weight: bold;
	margin: 0 auto;
	padding: 0.25em 0;
	color: #030;
}
div.post_wrapper div.post_main div.post_title a {
	display: block;
	padding: 0;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis; /* Safari */
	-o-text-overflow: ellipsis; /* Opera */
}
div.post_wrapper div.post_main div.post_time {font-size: 87.5%;}
div.post_wrapper div.post_main div.post_detail {
	margin: 0 auto;
	padding: 0;
	clear: both;
}
div.post_wrapper div.post_main div.entry_blogpost {
	min-height: 200px;
	min-height: 20vh;
	margin: 0 auto 5em auto;
	padding: 1em 0;
}
div.post_wrapper div.post_main div.entry_blogpost img {
	width: auto;
	height: auto;
	max-width: 960px;
}
div.post_wrapper div.post_main div.post_detail>div {
	width: 100%;
	display: block;
	margin: 0 auto 0.25em auto;
}
div.post_wrapper div.post_main div.post_detail>div:last-child {margin: 0 auto;}
div.post_wrapper div.post_main div div.entry_category,
div.post_wrapper div.post_main div div.entry_tag,
div.post_wrapper div.post_main div div.entry_comment {
	font-size: 75%;
}
div.post_wrapper div.post_main div.post_time a,
div.post_wrapper div.post_main div div.entry_category a,
div.post_wrapper div.post_main div div.entry_tag a,
div.post_wrapper div.post_main div div.entry_comment a {
	color: inherit;
}
div.post_wrapper div.post_main div div.post_time ul,
div.post_wrapper div.post_main div div.entry_category ul,
div.post_wrapper div.post_main div div.entry_tag ul {
	-webkit-padding-start: 0;
	list-style: none;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
	line-height: 100%;
}
div.post_wrapper div.post_main div div.post_time ul li,
div.post_wrapper div.post_main div div.entry_category ul li,
div.post_wrapper div.post_main div div.entry_tag ul li {
	margin: 0.125em 1em 0.125em 0;
	display: inline-block;
	letter-spacing: normal;/* 文字間を通常に戻す */
	line-height: 100%;
	border: none;
}
div.post_wrapper div.post_main div div.post_time ul li {
	padding: 0;
}
div.post_wrapper div.post_main div div.post_time ul li div.date,
div.post_wrapper div.post_main div div.post_time ul li div.hour {
	display: inline-block;
	margin: 0 1em 0 0;
}
div.post_wrapper div.post_main div div.entry_category ul li,
div.post_wrapper div.post_main div div.entry_tag ul li {
	padding: 0;
}
div.post_wrapper div.post_main div div.entry_category ul li {color: #363;}
div.post_wrapper div.post_main div div.entry_tag ul li {color: #693;}
div.post_wrapper div.post_main div div.entry_category ul:before,
div.post_wrapper div.post_main div div.entry_tag ul li:before,
div.post_wrapper div.post_main div div.entry_comment:before {
	font-size: 100%;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin: 0 0.5em 0 0;
	padding: 0;
}
div.post_wrapper div.post_main div div.entry_category ul:before {
	color: #363;
	content: "\f07c";
}
div.post_wrapper div.post_main div div.entry_tag ul li:before {
	color: #693;
	content: "\f02b";
}
div.post_wrapper div.post_main div div.entry_comment:before {
	color: #999;
	content: "\f086";
}
div.post_wrapper div.post_main div.post_link {}
/* ブログ用コメント欄 */
div.post_wrapper div.post_main div.entry_comments {
	width: 100%;
	max-width: 960px;
	display: block;
	text-align: left;
	margin: 2.5em auto;
}
div.post_wrapper div.post_main div.entry_comments-area {
	width: 100%;
	max-width: 960px;
	display: block;
	text-align: left;
	margin: 2.5em auto;
}
div.post_wrapper div.post_main div.entry_comments ol,
div.post_wrapper div.post_main div.entry_comments ul {
	text-align: left;
	vertical-align: top;
	letter-spacing: normal;/* 文字間を通常に戻す */
}
div.post_wrapper div.post_main div.entry_comments ol.commentlist>li {margin-bottom: 2.5em;}
div.post_wrapper div.post_main div.entry_comments ol img {
	width: auto;
	height: auto;
}
div.post_wrapper div.post_main div.comment-respond {margin: 2.5em auto 0 auto;}
/* ブログ用ページナビ */
div.post_wrapper div.post_main div.pagination {
	width: 100%;
	max-width: 960px;
	display: block;
	text-align: center;
	margin: 1em auto;
	padding: 0.5em 0;
	line-height: 1;
}
div.post_wrapper div.post_main div.pagination ul {
	width: 100%;
	max-width: 960px;
	-webkit-padding-start: 0;
	list-style: none;
	margin: 0 auto;
}
div.post_wrapper div.post_main div.pagination li {
	margin: 0 5px;
	padding: 2px 5px;
	display: inline-block;
}
div.post_wrapper div.post_main div.pagination li a {display: block;}
div.post_wrapper div.post_main div.pagination li:first-child,
div.post_wrapper div.post_main div.pagination li:last-child {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis; /* Safari */
	-o-text-overflow: ellipsis; /* Opera */
}
@media screen and (min-width:1020px) {
div.post_wrapper div.post_main div.pagination ul {
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
}
div.post_wrapper div.post_main div.pagination li.prev,
div.post_wrapper div.post_main div.pagination li.next {
	width: 40%;
	display: inline-block;
	letter-spacing: normal;/* 文字間を通常に戻す */
}
div.post_wrapper div.post_main div.pagination li.back {
	width: 20%;
	display: inline-block;
	letter-spacing: normal;/* 文字間を通常に戻す */
}
}
div.post_wrapper div.post_main div.pagination ul li i {
	margin: 0;
	padding: 0 0.5em;
	color: inherit;
}
div.post_wrapper div.post_main div.entry_category #markup,
div.post_wrapper div.post_main div.entry_tag #markup {
	background-color: #FCC;
}

div.post_side .widget {
	width: 100%;
	display: block;
	text-align: left;
	vertical-align: top;
	padding: 0;
}
div.post_side .widget {margin: 0 0 2em 0;}
.widget #widget_title {
	width: 100%;
	text-align: center;
	vertical-align: top;
	margin: 0 auto 0.5em auto;
	padding: 0.25em 0;
	color: #FFF;
	background-color: #030;
}
/* RSS */
.widget_rss {
	vertical-align: top;
	margin: 0 auto 0.5em auto;
	padding: 1px 0 0 0;
	background-image: none;
}
.widget_rss ul {
	list-style-type: none;
	margin: 0 0 0.5em 0;
	padding: 0;
}
.widget_rss ul li {
	margin: 0 0 3px 0;
	padding: 0;
}
.widget_rss .rss-date {
	font-size: 10px;
	line-height: 12px;
}
.widget_rss rssSummary {
	font-size: 10px;
	line-height: 12px;
}
/* ウィジェットカテゴリ */
.widget_categories ul {
	list-style: none;
	margin: 0 0 0.5em 0;
	padding: 0;
}
.widget_categories ul li {
	margin: 0 0 0.25em 0;
	padding: 0;
}
.widget_categories ul li:before {
	font-size: 100%;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin: 0 0.5em 0 0;
	padding: 0;
}
.widget_categories ul li:before {
	color: #363;
	content: "\f07c";
}
.widget_categories ul.children {
	list-style-type: circle;
	list-style-position: outside;
	margin: 0 0 0 10px;
	padding: 0;
}
.widget_categories ul.children li {
	margin: 5px 0 0 0;
	padding: 0;
}
/* カレンダー */
.widget_calendar table {
	text-align: center;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	background-color: transparent;
	border: none;
}
.widget_calendar caption {
	text-transform: uppercase;
	font-size: 100%;
	font-weight: bold;
	caption-side: top;
	text-align: center;
}
.widget_calendar th,
.widget_calendar td {
	padding: 0.25em 0;
	border: 1px solid #FFF;
	line-height: 1;
}
.widget_calendar th:empty,
.widget_calendar td:empty,
.widget_calendar td.pad {
	background-color: initial !important;
}
.widget_calendar tbody th,
.widget_calendar tbody td {
	background-color: #FFF;
}
/*日曜日*/
.widget_calendar thead th:first-child,
.widget_calendar tbody td:first-child {
	color: #C66;
	background-color: #FFE6E6E6;
}
/*土曜日*/
.widget_calendar thead th:last-child,
.widget_calendar tbody td:last-child {
	color: #363;
	background-color: #E6F6E6;
}
/*今日*/
.widget_calendar tbody tr td#today {
	color: #FFF;
	background-color: #693;
}
.widget_calendar tbody tr td#today a {color: #FFF;}
.widget_calendar thead,
.widget_calendar tbody {background-color: #FFF;}
.widget_calendar tfoot tr td {border: none;}
.widget_calendar tbody a {
	display: block;
	text-decoration: underline;
}

.widget_tag_cloud .tagcloud {
	line-height: normal;
	margin: 0 0 0.5em 0;
	padding: 0;
}
.widget_text .textwidget {
	line-height: 1.25;
	margin: 0;
	padding: 0;
}
.widget_archive ul,.widget_archive ul li,
.widget_nav_menu ul,.widget_nav_menu ul li,
.widget_meta ul,.widget_meta ul li,
.widget_pages ul,.widget_pages ul li,
.widget_recent_comments ul,.widget_recent_comments ul li,
.widget_recent_entries ul,.widget_recent_entries ul li {
	margin: 0 0 0.25em 0;
}
/* ウィジェット検索 */
.widget_search {margin: 0.25em 0 0.5em 0;}
.widget_search {margin: 0 0 5px 0;}
.widget_search #searchform {
	position: relative;
	margin: 0;
	padding: 0;
}
.widget_search #s {
	width: 156px;
	height: 24px;
	border: none;
	color: #333;
	padding: 0.1em 0.25em 0.1em 0.25em;
	background-color: #E6E6E6;
}
.widget_search #searchsubmit {
	position: absolute;
	top: 0;
	_top: 1px;
	left: 176px;
	border-radius: 0;
}

@-webkit-keyframes   99%,to {-webkit-transform: translate(-100%);}
}
@-moz-keyframes   99%,to {-moz-transform: translate(-100%);}
}
@-ms-keyframes   99%,to {-ms-transform: translate(-100%);}
}
@-o-keyframes   99%,to {-o-transform: translate(-100%);}
}
@keyframes   99%,to {transform: translate(-100%);}
}