/*!
Theme Name: 山形遊佐洋上風力発電
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: temp_base
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

temp_base is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments



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

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */ 
@media print, screen and (min-width:769px) { 

html {
	font-family: "Noto Sans","BIZ UDGothic", sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 97%;
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Box sizing
--------------------------------------------- */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #333333;
	font-family:inherit;
	line-height: 1.7;
	letter-spacing: 0.08em;
}
b,
strong {
	font-weight: bolder;
}
small {
	font-size: 80%;
}
blockquote {
	margin: 0 1.5em 1.6em;
	padding: 15px;
	border: 1px solid #e2e2e2;
	border-radius: 5px;
}
address {
	margin: 0 0 1.5em;
}
/* Elements
--------------------------------------------- */
body {
	background: #fff;
	overflow-x: hidden;
}
hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}
dt {
	font-weight: 700;
}
dd {
	margin: 0 1.5em 1.5em;
}
/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}
img {
	height: auto;
	max-width: 100%;
	vertical-align: bottom;
}
figure {
	margin: 1em 0;
}
table {
	margin: 0 0 1.5em;
	width: 100%;
}
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}
/*SP用の要素を非表示*/
.sp_show {
	display: none !important;
}

/* Links
--------------------------------------------- */
a {
	color: #0066c0;
}
a:visited {
	color: #649ACB;
}
a:hover,
a:focus,
a:active {
	color: #014786;
	text-decoration: none;
}
a:focus {
	outline: none;
}
a:hover,
a:active {
	outline: 0;
}
#page a:hover img,
.site_header a:hover img,
.contents_1col_top a:hover img {
	opacity:0.78;
	-webkit-transition:0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.2em .5em 0.6em;
}
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}
button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: inherit;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px 7px;
	font-size: 100%;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}
select {
	border: 1px solid #ccc;
}
textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
main.contents_top {
	margin: 0 auto;
}

main .contents_page_inner {
	margin: 0 auto 10px;
	padding: 0;
	width: 88%;
	max-width: 1400px;
	min-height: 330px;
}
main .contents_page_inner.page_2col {
	display: flex;
	justify-content: space-between;
	
}
main .contents_page_inner.page_2col article {
	width: 72%;
}
main .contents_page_inner.page_2col aside {
	margin-left: 5%;
	width: clamp(250px, 28%, 340px);
}


/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* header
--------------------------------------------- */
.home .header {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
	background: rgba(255,255,255,0.85);
	z-index: 10000;
}
.header {
	background: rgba(255,255,255,1.0);
}
.header_inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: nowrap;
	margin: 0 auto;
	padding: 12px 0 15px;
	width: 97%;
	max-width: 1440px;
	height: 100px;
}
.site_title {
	width: 30%;
}
.header_links {
	width: 70%;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

/*パンくずリスト*/
#breadcrumb {
	margin-bottom: 50px;
	padding: 20px 0 0;
	font-size: 70%;
	text-align: left;
}
#breadcrumb_inner {
	margin: 0 auto;
	padding: 0;
	width: 88%;
	max-width:1400px;
	color:#222;
}
#breadcrumb_inner a {
	position: relative;
	display: inline-block;
	margin: 0 13px;
	padding: 2px 1.2em 0px;
	color:#222;
	background: #fff;
	border: 1px solid #C5C5C5;
	text-decoration: none;
	border-radius: 15px;
}
#breadcrumb_inner a:after {
	content: "";
	display: inline-block;
	position: absolute;
	right: -20px;
	top: 7px;
	background: url("images/pages/breadcrumb_arrow.svg")no-repeat;
	width: 9px;
	height: 10px;
}
#breadcrumb_inner a:hover {
	text-decoration:none;
	color:#aaa;
	border: 1px solid #C5C5C5;
	transition: all .1s;
}
#breadcrumb_inner a.home {
	margin-left: 0;
}
#breadcrumb_inner .current-item {
	display: inline-block;
	padding: 3px 1.2em 1px;
	color:#222;
	background: #fff;
	border: 1px solid #fff;
	text-decoration: none;
	border-radius: 15px;
}


/* Navigation
--------------------------------------------- */
.pc_nav {
	transition: all .2s;
}
.pc_nav ul.pc_nav_menu {
	display: flex;
	justify-content: space-between;
	column-gap: 1.8em;
	flex-wrap: nowrap;
	margin: 0 auto;
	width: 100%;
	font-size: 97%;
}

/*リンクのスタイル*/
.pc_nav a,
.pc_nav a:hover,
.pc_nav a:active,
.pc_nav a:visited {
	color: #222;
	text-decoration: none;
	/*font-size: 100%;*/
	font-weight: 600;
	letter-spacing: 0.08em;
}
@media print, screen and (max-width:1100px) { 
.header_links a,
.header_links a:hover,
.header_links a:active,
.header_links a:visited {
	font-size: 88%;
}
}

/*親メニュー*/
.pc_nav ul.pc_nav_menu > li > a {
	position: relative;
	display: block;
	padding: 3px 5px;
	text-align: center;
}
.pc_nav ul.pc_nav_menu > li > a:hover,
.pc_nav ul.pc_nav_menu > li > a:active {
	background: rgba(255,255,255,0.40);
	text-decoration: underline;
}

/*お問い合わせボタン*/
.head_contact a {
	display: block;
	margin-left: 2em;
	padding: 12px 30px;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	background: #31B171;
	border-radius: 50px;
	transition: all .2s;
}
.head_contact a:hover,
.head_contact a:active {
	background: #119051;
	transition: all .2s;
}

/* TOP　コンテンツ
--------------------------------------------- */
h2.h2_top {
	position: relative;
	margin: 20px 0;
	text-align: center;
}
h2.h2_top span.txtl {
	display: inline-block;
	padding: 0 2.4em;
	color: #222;
	font-size: 210%;
	font-weight: 700;
	text-align: center;
	background-image: url("images/pages/top_h2_wave.svg"),url("images/pages/top_h2_wave.svg");
	background-repeat: no-repeat,no-repeat;
	background-size: 2em, 2em;
	background-position: left center, right center;
	letter-spacing: 5px;
}
h2.h2_top span.txts {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	font-size: clamp(70%,.7vw,80%);
	font-weight: 700;
	letter-spacing: 0.3em;
}

.mv {
	position: relative;
	width: 100%;
	height: 100%;
}
.mv .mv_txt {
position: absolute;
    top: 67px;
    left: 0;
    display: flex;
    align-items: center;
    width: 100%;
    height: calc(100% - 67px);
}
.mv .mv_txt:before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 38%;
	height: 100%;
	clip-path: polygon(0 0, 68% 0, 100% 100%, 0% 100%);
	background: rgba(49,177,113,0.60);
}
.mv .mv_txt p {
	position: relative;
	font-size: 260%;
	color: #fff;
	padding-left: 5%;
	text-shadow: 0 0 10px rgba(0,0,0,0.7);
}



/* TOP　コンテンツ　山形・遊佐沖からはじまる新しいエネルギー
--------------------------------------------- */
section.about {
	position: relative;
	padding: 40px 0 200px;
}
section.about:after {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 160px;
	background: url("images/pages/top_line_fusha.png")
	repeat-x center;
}
section.about h2 {
	margin: 0 auto;
	max-width: 1300px;
	font-size: 270%;
	color: #2EB5A7;
	font-weight: 700;
	text-align: center;
	background-image: url("images/pages/top_about_wave_left.svg"),url("images/pages/top_about_wave_right.svg");
	background-repeat: no-repeat,no-repeat;
	background-size: 18%, 18%;
	background-position: left center, right center;
}
section.about .txt {
	margin: 0 auto;
	padding: 60px 0;
	width: 97%;
	max-width: 1440px;
	background: url("images/pages/top_about_bg.png")no-repeat center/ contain;
}
section.about .txt p {
	margin: 0 auto;
	width: 88%;
	max-width: 1000px;
	font-size: 110%;
	line-height: 2.0;
}



/* TOP　コンテンツ　お知らせ
--------------------------------------------- */
section.news {
	position: relative;
	padding: 20px 0 4px;
	background: #dcf5ff;
}

section.news:after {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -45px;
	left: 0;
	width: 100%;
	height: 90px;
	background: url("images/pages/top_line_deepblue.svg")
	no-repeat center;
	z-index: 1;
}

ul.news_wrapper {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 30px auto;
	width: 100%;
	max-width: 1020px;
}
li.news_box  {
	width: 48%;
	margin: 13px 0;
}
li.news_box a {
	display: flex;
	flex-wrap: nowrap;
	padding: 13px 6px 13px 13px;
}
.news_thumb {
	width: 170px;
	position: relative;
	overflow: hidden;
	aspect-ratio: 4/3;	
}
.news_thumb img {
	width: 100%;
    height: 100%;
    object-fit: cover;
	border-radius: 5px;
}

.news_detail {
	padding-left: 1em;
    width: calc(100% - 170px);
}
.news_detail time {
	color: #222;
	font-size: 80%;
	font-weight: 600;
}
.news_detail .catname span {
	padding: 4px 1em 3px;
	color: #fff;
	font-size: 60%;
	font-weight: 400;
	vertical-align: middle;
	border-radius: 20px;
}
.news_detail .title {
	margin-top: 5px;
	line-height: 1.5;
}



/*リンク色*/
ul.news_wrapper li.news_box a,
ul.news_wrapper li.news_box a:visited {
	color: #1FA3CC;
	font-weight: 700;
	text-decoration: none;
	border-radius: 5px;
	transition: all .1s;
}
ul.news_wrapper li.news_box a:hover,
ul.news_wrapper li.news_box a:active {
	background: rgba(255,255,255,0.7);
	transition: all .1s;
}
img.mark_new {
	position: relative;
	top: -.25em;
    right: 3px;
}

/*過去一覧*/
.news_more {
	position: relative;
	margin: 70px 0 0;
	text-align: center;
	z-index: 2;
}
.news_more a {
	color: #fff;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-decoration: none;
	transition: all .2s;
}
.news_more a:hover,
.news_more a:active {
	transition: all .2s;
	background: #016583;
}

/* TOP　コンテンツ　事業概要、会社概要
--------------------------------------------- */
section.info {
	margin: 0 auto;
	padding: 150px 0 40px;
	width: 100%;
	max-width: 1100px;
}


.overview_wrap,
.company_wrap {
	display: flex;
	justify-content: center;
}
section.info .txtbox .txt {
	margin: 13% 0 10%;
	min-height: 10em;
}
section.info .txtbox .btn_more {
	margin: 11% 0 0;
	text-align: center;
}
section.info .txtbox .btn_more a {
	display: inline-block;
	padding: 5px 2.8em 3px;
	/*font-size: 80%;*/
	color: #222;
	text-decoration: none;
	border: 1px solid #222;
	border-radius: 40px;
	transition: all .1s;
}
section.info .txtbox .btn_more a:hover,
section.info .txtbox .btn_more a:active {
	color: #fff;
	background: #333;
	transition: all .1s;
}
section.info .picbox {
	position: relative;
	overflow: hidden;
	width: 100%;
	aspect-ratio: 13/4;
}
section.info .picbox img {
	width: 100%;
    height: 100%;
    object-fit: cover;
	object-position: center;
}

/*事業概要*/
.overview_wrap {
	margin-bottom: 120px;
}
.overview_wrap .txtbox {
	position: relative;
}
/*.overview_wrap .txtbox:before {
	content: "";
	position: absolute;
	right: -90px;
	bottom: -170px;
	width: 130px;
	height: 207px;
	 background: url("images/pages/gray_thunder.svg")no-repeat center /contain;
	 z-index: 1;
}*/
.gray_thunder {
	position: relative;
	top: -40px;
	left: 0;
	display: inline-block;
	width: 100%;
	height: 160px;
	text-align: center;
	z-index: 100;
}
.gray_thunder img {
	max-width: 100%;
	height: 100%;
}
@media print, screen and (max-width:1050px) {
.overview_wrap .txtbox:before {
	display: none;
}
}
.overview_wrap .txtbox {
	order: 1;
	padding: 0 3%;
	width: 50%;
	max-width: 620px;
	min-width: 450px;
	align-content: center;
}
.overview_wrap .picbox {
	order: 2;
}
.overview_wrap .picbox:after {
	content: "";
	position: absolute;
	left: -1px;
	top: 0;
	background: #fff;
	width: 11%;
	height: 101%;
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
}

/*会社概要*/
.company_wrap {
	margin-top: -60px;
}

.company_wrap .txtbox {
	order:2;
	padding: 0 3%;
	width: 50%;
	max-width: 620px;
	min-width: 450px;
	align-content: center;
}
.company_wrap .picbox {
	order: 1;
}
.company_wrap .picbox:after {
	content: "";
	position: absolute;
	right: -1px;
	top: 0;
	background: #fff;
	width: 11%;
	height: 101%;
	clip-path: polygon(100% 0, 0 0, 100% 100%);
}


/*コンテンツ幅をはみ出してブラウザ幅へ*/
.outside_right {
    flex: 1;
    margin-right: calc(50% - 50vw);
}
.outside_left {
    flex: 1;
    margin-left: calc(50% - 50vw);
}

/* Posts and pages
--------------------------------------------- */
.entry-content p {
	margin-bottom: 1.6em;
	line-height: 1.95;
}
.entry-content ul,
.entry-content ol {
	margin: 0 0 1.5em 1.5em;
}

.entry-content ul {
	list-style: disc;
}

.entry-content ol {
	list-style: decimal;
}

.entry-content li > ul,
.entry-content li > ol {
	margin-bottom: 0;
	margin-left: 1.2em;
}
.entry-content .entry_meta {
	margin: 0 10px 20px;
	text-align: right;
	font-size: 90%;
}

.sticky {
	display: block;
}

/*.post,
.page {
	margin: 0 0 1.5em;
}*/

.updated:not(.published) {
	display: none;
}

/*.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}*/

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}


/* Posts and pages（見出し）
--------------------------------------------- */
/* H1 */
h1.entry-title,
h1.category_name {
	position: relative;
	padding: 25px 12%;
	font-size: 180%;
	font-weight: 700;
	text-align: center;
	background: #fff url("images/pages/page_h1_bg.svg")no-repeat center / cover;
	letter-spacing: 0.16em;
}

/* H2 */
.entry-content h2 {
	margin: 40px 0 15px;
	padding: 8px 0 5px 15px;
	font-size: 130%;
	font-weight: 700;
	border-bottom:solid 1px #18906b;
}

/* H3 */
.entry-content h3 {
	display: inline-block;
	margin: 8px 0;
	padding:  0;
	font-size: 120%;
	font-weight: 700;
}

/* Posts and pages（ページナビ）
--------------------------------------------- */
main .wp-pagenavi {
	margin: 30px auto 0;
	font-size: 90%;
	width: 90%;
    max-width: 1020px;
}
main .wp-pagenavi span,
main .wp-pagenavi a {
	display: inline-block;
	padding: 3px 11px 2px;
	color: #222;
	border: 1px solid #fff;
}
main .wp-pagenavi a 
,main .wp-pagenavi a:visited {
	color: #222;
}
main .wp-pagenavi a:hover
,main .wp-pagenavi a:active {
	background: #DDDDDD;
	text-decoration: none;
	color: #222;
	border: 1px solid #DDDDDD;
}

main .wp-pagenavi span.pages {
	font-size: 80%;
	font-weight: 700;
	border: none;
}
main .wp-pagenavi span.current {
	color: #fff;
	background: #595b5a;
	border: 1px solid #595b5a;
}

main .wp-pagenavi span.extend {
	border: none;
}

/* Posts and pages（検索結果ぺージ）
--------------------------------------------- */
ul.search_result {
	list-style: disc;
	padding-left: 30px;
}
ul.search_result li {
	margin-bottom: 0.6em;
}

/* Posts and pages（お問い合わせ）
--------------------------------------------- */
.inquiry_list {
	margin: 40px auto 0;
	max-width: 900px;
}
.inquiry_list dl {
	display: flex;
	flex-wrap: wrap;
}
.inquiry_list dt.inquiry_title {
	display: inline-block;
	margin-bottom: 15px;
	width: 14em;
	font-weight: 600;
	vertical-align: top;
}
.inquiry_list dd {
	display: inline-block;
	margin: 0;
	padding: 0;
	width: calc(100% - 15em);
}


.inquiry_list .must-txt {
	position: relative;
	top: -2px;
	left: 3px;
	padding: 2px 4px 1px;
	color: #fff;
	font-size: 60%;
	font-weight: 500;
	background: #db3b3b;
	border-radius: 2px;
	cursor: default;
	user-select: none;
}
.wpcf7-not-valid-tip {
	font-size: 80%;
}

.wpcf7-spinner {
	/*display: none;*/
}


.recaptcha {
	margin: 50px 0 0;
	color: #777;
	font-size: 65%;
	line-height: 1.5em;
}
#agreement {
	margin-top: 30px;
	text-align: center;
}
#agreement p {
	text-align: center;
}
input[type="submit"].wpcf7-form-control,
input[type="button"].wpcf7-form-control {
	padding: 30px 110px;
	border: solid 1px #999999;
	font-size: 100%;
	font-weight: 600;
	letter-spacing: 0.25em;
	cursor: pointer;
}
input[type="button"].wpcf7-form-control {
	padding: 30px 60px;
	background: #f5f5f5;
}
input[type="submit"].wpcf7-form-control:hover,
input[type="button"].wpcf7-form-control:hover {
	background: #aaa;
	transition: all .2s;
}
input[type="submit"].wpcf7-form-control:active,
input[type="submit"].wpcf7-form-control:focus,
input[type="button"].wpcf7-form-control:active,
input[type="button"].wpcf7-form-control:focus {
	background: #ccc;
	border: solid 1px #999;
	transition: all .2s;
}
.con_name,
.con_tel {
	width: 70%;
	max-width: 18em;
}
.con_email {
	width: 90%;
	max-width: 25em;
}
.con_yubin1 {
	margin-left: 6px;
	margin-right: 6px;
    width: 60px;
}
.con_yubin2 {
	margin-left: 5px;
    margin-right: 25px;
    width: 65px;
}
.con_jusyo {
	margin-top: 15px;
    margin-right: 5px;
    width: 100%;
}
.con_inquiry {
	width: 100%;
	height: 12em;
}

.wpcf7-spinner {
	display: block;
	margin: 15px auto 0;
	width: 24px;
	height: 24px;
}



/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* sidebar
--------------------------------------------- */
/* ▼side（これまでのお知らせ） */
aside h2 {
	margin-bottom: 11px;
	padding: 8px 13px;
	color: #fff;
	font-size: 95%;
	font-weight: 600;
	background: #1fa3cc;
}
aside a,
aside a:visited {
	color: #333;	
}
.past_entry,
.monthly-eachcat ul {
	margin-bottom: 35px;
}
.past_entry > ul,
.monthly-eachcat > ul {
	/*margin-top: 15px;*/
	font-size: 83%;
}
.past_entry ul li {
	position: relative;
	margin-top: 11px;
	padding:0 2px 13px 17px;
	border-bottom: 1px dotted #777;
}
.past_entry ul li time {
	display: block;
	margin-bottom: 4px;
	font-size: 90%;
}
.past_entry ul li time:before {
	content: "";
	position: absolute;
	top: 7px;
    left: 4px;
	display: inline-block;
	background: #fff;
	border: 2px solid #1fa3cc;
	width: 7px;
	height: 7px;
	border-radius: 10px;
}
.past_entry ul li .catname {
	display: block;
	color: #1fa3cc;
	padding: 0;
	font-size: 82%;
	border-radius: 2px;
}
.past_entry .more {
	margin: 0;
	text-align: right;
}
.past_entry .more a {
	font-size: 75%;
}
ul.monthly li {
	margin: 5px;
}
ul.eachcat li {
	margin: 5px;
}
ul.eachcat > li > ul {
	padding-left: 2.3em;
}
ul.eachcat > li > ul > li {
	position: relative;
}
ul.eachcat > li > ul > li:before {
	content: "ー";
	position: absolute;
	top: 0px;
    left: -20px;
	color: #c3c3c3;
	font-weight: 700;
}


/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}



/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}


/* footer
--------------------------------------------- */
#site_footer {
	position: relative;
	background: #fff url("images/footers/footer.webp")no-repeat center 95% /cover;
	height: 13vw;
	max-height: 340px;
}
#site_footer:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	background: url("images/footers/footer_blur.png")repeat-x center top / contain;
	width: 100%;
	height: 100px;
}

/*コピーライト*/
#copyright {
	position: absolute;
	bottom: 0;
	left: 0;
	display: inline-block;
	padding: 15px 0 10px;
	width: 100%;
	color: #fff;
	font-size: 70%;
	text-align: center;
	letter-spacing: 0.25em;
}
#copyright a,
#copyright a:visited {
	color: #fff;
	text-decoration: none;
}
#copyright a:hover,
#copyright a:active {
	text-decoration: underline;
}

body .page-top {
	position: fixed;
    right: 10px;
    bottom: 10px;
    z-index: 99;
	cursor: pointer;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 100%;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}
.alignleft:after {
   content: "";
   display: block;
   clear: both;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/*PDFアイコン*/
a[href $='.pdf'] {
    background:url(icon/ico_pdf.gif) no-repeat right 70%;
    padding:0 18px 0 0;
}
a[href $='.pdf'] a {
    text-decoration:none;
}

a[href $='.pdf'] a:hover {
    text-decoration:none;
}

/*会社概要*/
.campany_outline table {
	margin: 0;	
	font-size: 0.95em;
}
.campany_outline table tbody td {
	margin: 0;
	padding: 18px 10px 18px 20px;
	line-height: 1.85;
	border:none;
}
.campany_outline table tbody td:nth-child(1) {
	padding-top: 18px;
	width: 25%;
	border:none;
	border-bottom:solid 1px #B8B8B8;
	vertical-align: top;
	font-weight: 700;
}
.campany_outline table tbody td:nth-child(2) {
	width: 75%;
	padding: 18px 10px 18px 20px;
	border:none;	
	border-bottom:dotted 1px #848484;
	vertical-align: top;
}

/*株主*/
.shareholder table {
	margin: 0;	
	font-size: 0.95em;
}

.shareholder .has-fixed-layout {
	margin: 0;	
	font-size: 0.95em;
}
.shareholder table tbody tr td {
	margin: 0;
	padding: 18px 10px 18px 20px;
	line-height: 1.85;
	vertical-align: top;
}
.shareholder table tbody tr th {
	margin: 0;
	padding: 18px 10px 18px 20px;
	border:none;
	line-height: 1.85;
	font-weight: 700;
	vertical-align: top;
}
.shareholder table tbody td:nth-child(1) {
	width: 30%;

}
.shareholder table tbody td:nth-child(2) {
	width: 15%;
}
.shareholder table tbody td:nth-child(3) {
	width: 55%;
}



}
