/*!
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 JP", sans-serif;
	font-optical-sizing: auto;
	font-size: 100%;
	font-weight: 400;
	font-style: normal;
}

/* 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: 1.3em 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;
}
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: 70px auto;
}

main .contents_page_inner {
	margin: 0 auto 70px;
	padding: 0;
	width: 88%;
	max-width: 1200px;
}
main .contents_page_inner.page_2col {
	display: flex;
	justify-content: space-between;
	
}
main .contents_page_inner.page_2col article {
	width: 70%;
}
main .contents_page_inner.page_2col aside {
	margin-left: 5%;
	width: clamp(220px, 25%, 320px);
}

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

/* header
--------------------------------------------- */
.header {
	padding: 15px 0 10px;
	background: #fff;
}
.header_inner {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 auto;
	padding: 0;
	width: 97%;
	max-width: 1200px;
}
.head_txts_a {
	width:100%;
	margin-bottom: 10px;
	font-size:0.70em;
	letter-spacing: 0.5px;
}
.site_title {
	width: 54%;
}
.header_links {
	margin-top: -16px;
    width: 46%;
    max-width: 600px;
}

.header_links ul {
	display: flex;
	justify-content: flex-end;
	flex-wrap: nowrap;
}
.header_links ul li.head_tel {
	margin-right: 3%;
	padding-top: 5px;
}
.header_links ul li.head_irai a {
	display: block;
	padding: 0 .7vw;
	clip-path: polygon(8% 0, 100% 0%, 92% 100%, 0% 100%);
	background: #00C4D2;
}
.header_links ul li.head_contact a {
	display: block;
	padding: 0 .2vw 0 1.1vw;
	clip-path: polygon(8% 0, 100% 0%, 100% 100%, 0% 100%);
	background: #74D510;
}

/* Navigation
--------------------------------------------- */
.pc_nav {
	background: #fff;
	margin-top: 20px;
	transition: all .2s;
}
.pc_nav ul.pc_nav_menu {
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	margin: 0 auto;
	width: 97%;
	max-width: 1200px;
	font-size: 97%;
}
/*リンクのスタイル*/
.pc_nav a,
.pc_nav a:hover,
.pc_nav a:active,
.pc_nav a:visited {
	color: #222;
	text-decoration: none;
	font-weight: 500;
	letter-spacing: 0.08em;
}
@media print, screen and (max-width:1100px) { 
.pc_nav a,
.pc_nav a:hover,
.pc_nav a:active,
.pc_nav a:visited {
	font-size: 84%;
}
}

/*ナビメニュー*/
.pc_nav ul.pc_nav_menu li a {
	position: relative;
	display: block;
	padding: 5px 5px 5px 25px;
	text-align: center;
	transition: all .2s;
}
.pc_nav ul.pc_nav_menu li a:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	background: url("images/headers/list_navi.svg")no-repeat;
	background-size: contain;
	width: 19px;
	height: 20px;
}
.pc_nav ul.pc_nav_menu li a:hover,
.pc_nav ul.pc_nav_menu li a:active {
	color: #2D97B8;
	transition: all .2s;
}

/* TOP　コンテンツ
--------------------------------------------- */
.mv {
	position: relative;
	width: 100%;
	height: 100%;
	background: rgba(244,244,244,1.00);
}
.mv .mv_txt {
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	padding: 2.5%;
	width: 80%;
	max-width: 1200px;
	background: rgba(0,142,204,0.8);
	z-index: 10000;
}
.mv .mv_txt p.mv_txt_s {
	display: inline-block;
	max-width: 52em;
	color: #fff;
	font-size: clamp(95%,1.5vw,120%);
	font-weight: 500;
}
.mv .mv_txt p img {
	margin-bottom: 2%;
	padding-right: 25%;
}
img.mv_logo {
	position: absolute;
	bottom: 3%;
	right: 5%;
	max-width: 40%;
	z-index: 10001;
}

/*固定ぺージから出力コンテンツ*/
.topcontent_wrap {
	margin: 0 auto;
	width: 90%;
	max-width: 1400px;
	font-size: 125%;
}

.topcontent_wrap h2 {
	margin: 70px auto 30px;
	padding: .4em 1em;
	color: #000;
	font-size: 125%;
	font-weight: 700;
	background: url("images/pages/top_h2_bg.png")no-repeat;
	background-size: cover;
	background-position: center;
}
.topcontent_wrap h3 {
	margin: 40px auto 23px;
	font-size: 110%;
	font-weight: 700;
	border-bottom: 1px dashed #9c9c9c;
}

.topcontent_wrap p {
	margin-bottom: 30px;
	font-size:0.8em;
}
.topcontent_wrap ul,
.topcontent_wrap ol {
	margin: 0 0 1.5em 3em;
}

.topcontent_wrap ul {
	list-style: disc;
}

.topcontent_wrap ol {
	list-style: decimal;
}

.topcontent_wrap li > ul,
.topcontent_wrap li > ol {
	margin-bottom: 0;
	margin-left: 1.2em;
}
.topcontent_wrap p.nomargin {
	margin-bottom: 0;
}

/*テーブル　国内外での規制の動き*/
.tablepress.tablepress-id-1 {
	margin: 15px 0;
	font-size: 80%;
}
.tablepress.tablepress-id-1 tr th,
.tablepress.tablepress-id-1 tr td {
	border: 1px solid #000;
	vertical-align: middle;
}
.tablepress.tablepress-id-1 thead tr th,
.tablepress.tablepress-id-1 thead tr td {
	text-align: center;
	background: #fff;
}
.tablepress.tablepress-id-1 tr td.column-1 {
	width: 8em;
	text-align: center;
	line-height: 1.3;
}

/*テーブル　検査内容*/
.tablepress.tablepress-id-3 {
	margin: 15px 0;
	font-size: 90%;
}
.tablepress.tablepress-id-3 tr th,
.tablepress.tablepress-id-3 tr td {
	font-weight: 500;
	text-align: center;
	background: #fff;
	border: 1px solid #707070;
}
.tablepress.tablepress-id-3 tr th,
.tablepress.tablepress-id-3 tr .column-1 {
	background: #EFEFEF;
}

/*テーブル　分析方法（LC-MS/MS法）*/
.wp-block-table.table_howto table {
	font-size: 90%;
}
.wp-block-table.table_howto table tr td {
	padding: 0px;
	border: none;
	vertical-align: top;
}
.wp-block-table.table_howto table tr td:first-child {
	position: relative;
	width: 9em;
}
.wp-block-table.table_howto table tr td:first-child:after {
	content: "：";
	position: absolute;
	right: 0;
	top: 0;
}

/*検査の流れ step画像*/
.topcontent_wrap .steps .wp-block-column {
	position: relative;
}
.topcontent_wrap .steps .wp-block-column:after {
	content: '';
	position: absolute;
	top: 60%;
	left: 105%;
	-webkit-transform : translateY(-60%);
	transform : translateY(-60%);
	background: url("images/pages/bluearrow.svg")no-repeat;
	background-size: contain;
	background-position: bottom;
	width: clamp(10px,1.5vw,23px);
	height: 54px;
}
.topcontent_wrap .steps .wp-block-column:last-child:after {
	display: none;
}


/*お知らせ*/
section.news {
	margin: 90px 0 0;
}
section.news h2 {
	padding: 1.5em;
	color: #000;
    font-size: 190%;
    font-weight: 700;
	text-align: center;
	background: url("images/pages/page_h1_bg.png")no-repeat;
}
ul.news_wrapper {
	margin: 30px auto 0;
	width: 90%;
	max-width: 1200px;
}
ul.news_wrapper li.news_box {
	display: flex;
	border-bottom: 1px dashed #5D5D5D;
	padding: .9em;
}
ul.news_wrapper li.news_box time.date span {
	position: relative;
	display: inline-block;
	margin-right: 40px;
	padding-left: 5px;
	width: 10em;
	font-size: 90%;
	font-weight: 500;
	line-height: 1em;
}
ul.news_wrapper li.news_box time.date span:after {
  content: '■';
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform : translateY(-50%);
  transform : translateY(-50%);
  color: #48B6D9;
  font-size: 50%;
}

/*リンク色*/
ul.news_wrapper li.news_box a,
ul.news_wrapper li.news_box a:visited {
	color: #222;
	text-decoration: none;
}
ul.news_wrapper li.news_box a:hover,
ul.news_wrapper li.news_box a:active {
	text-decoration: underline;
}
img.mark_new {
	position: relative;
	top: -0.3em;
	right: 0px;
}

/*過去一覧*/
.news_more {
	margin-top: 20px;
	text-align: right;
}
.news_more a {
	position: relative;
	display: inline-block;
	padding: 0 0 0 20px;
	color: #000;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-decoration: none;
	transition: all .1s;
}
.news_more a:before {
	content: '';
	width: 9px;
	height: 9px;
	border: 0;
	border-top: solid 2px #000;
	border-right: solid 2px #000;
	transform: rotate(45deg);
	position: absolute;
	top: 2px;
	left: 0;
	bottom: 0;
	margin: auto;
}
.news_more a:hover,
.news_more a:active {
	transition: all .1s;
	color: #999;
}


/* Posts and pages
--------------------------------------------- */
.entry-content p {
	margin-bottom: 30px;
}
.entry-content ul,
.entry-content ol {
	margin: 0 0 1.5em 3em;
}
.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;
}
.updated:not(.published) {
	display: none;
}
.page-links {
	clear: both;
	margin: 0 0 1.5em;
}


/* Posts and pages（見出し）
--------------------------------------------- */
/* H1 */
h1.entry-title {
	padding: 1.6em 7%;
	font-size: 180%;
	font-weight: 700;
	text-align: center;
	background: url("images/pages/page_h1_bg.png")no-repeat;
	background-position: center;
	background-size: cover;
	letter-spacing: 0.08em;
}


/* H2 */
.entry-content h2 {
	margin: 50px 0 22px;
	padding: 9px 1em;
	color: #004267;
	font-size: 120%;
	font-weight: 700;
	background: #f6f6f6;
	border-left: 8px solid rgb(0, 172, 225);
}
/* H3 */
.entry-content h3 {
	margin: 30px 0 13px;
	padding: 8px .2em;
	color: #004267;
	font-size: 105%;
	font-weight: 700;
	border-bottom: 1px dashed #004267;
}

/* Posts and pages（パンくずリスト）
--------------------------------------------- */
#breadcrumb {
	margin: 20px 0 50px;
	font-size: 75%;
	text-align: left;
}
#breadcrumb_inner {
	margin: 0 auto;
	padding: 0;
	width: 88%;
	max-width:1400px;
	color:#000;
}
#breadcrumb_inner a {
	display: inline-block;
	margin: 0;
	padding: 0 1em;
	color:#000;
	/*background: #FF9191;*/
	text-decoration: none;
}
#breadcrumb_inner a.home {
	padding-left: 0;
}
#breadcrumb_inner a:hover {
	text-decoration:none;
	color: #999;
}
#breadcrumb_inner .current-item {
	display: inline-block;
	margin: 0;
	padding: 0 1em;
	color:#000;
	font-weight: 600;
}

/* Posts and pages（ページナビ）
--------------------------------------------- */
#page .wp-pagenavi {
	margin: 40px 0 0;
	font-size: 84%;
}
#page .wp-pagenavi span,
#page .wp-pagenavi a {
	display: inline-block;
	padding: 0px 6px 2px;
	color: #222;
	/*border-radius: 4px;*/
	border: 1px solid #ccc;
}
#page .wp-pagenavi a 
,#page .wp-pagenavi a:visited {
	color: #222;
}
#page .wp-pagenavi a:hover
,#page .wp-pagenavi a:active {
	background: #ddd;
	text-decoration: none;
	color: #222;
	border: 1px solid #ccc;
}

#page .wp-pagenavi span.pages {
	text-align: center;
	border: none;
}
#page .wp-pagenavi span.current {
	color: #fff;
	background: #444;
	border: 1px solid #444;
}
#page .wp-pagenavi span.extend {
	border: none;
}

/* Posts and pages（お知らせアーカイブ）
--------------------------------------------- */
.archive ul.news_wrapper {
	margin: 10px auto 40px;
	max-width: 1300px;
}


/* Posts and pages（お問い合わせ）
--------------------------------------------- */
.inquiry_list {
	margin-top: 40px;
}
.inquiry_list dt.inquiry_title {
	display: inline-block;
	width: 13em;
	vertical-align: top;
}
.inquiry_list dd {
	display: inline-block;
	margin: 0;
	padding: 0;
	width: calc(100% - 14em);
}

.inquiry_list .must-txt {
	position: relative;
	top: -1px;
	left: 3px;
	padding: 0px 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;
}
#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;
}

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

.bypostauthor {
	display: block;
}

/* sidebar
--------------------------------------------- */
/* ▼side（これまでのお知らせ） */
aside .past_entry  {
	background: #fff;
	font-size: clamp(90%,1.3vw,100%);
}
.past_entry h2 {
	padding: 15px 5px;
	font-size: 110%;
	font-weight: 500;
	border-bottom: 1px solid #000;
}
.past_entry ul.past_entry_list {
	margin: 25px 0;
}
.past_entry ul li {
	position: relative;
	display: flex;
	flex-direction: column;
	margin-bottom: 9px;
	padding:0 5px 13px 8px;
	border-bottom: 1px dotted #777;
}
.past_entry ul li time {
	order: 1;
	margin-bottom: 5px;
	font-size: 85%;
	font-weight: 500;
}
.past_entry ul li a {
	order: 2;
	font-size: 90%;
	color: #555;
}
.past_entry .more {
	text-align: right;
}
.past_entry .more a {
	display: inline-block;
	padding: 1px 1.3em;
	color: #444;
	font-size: 75%;
	border: 1px solid #444444;
	text-decoration: none;
	transition: all .1s;
}
.past_entry .more a:hover,
.past_entry .more a:active {
	color: #fff;
	background: #444444;
	transition: all .1s;
}

/* 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 {
	margin: 70px 0 0;
	font-size: clamp(87%,1.3vw,100%);
	background: #F8F8F8;
}
#site_footer a.txtlink {
	display: inline-block;
	position: relative;
	padding-left: 1em;
	font-size: 75%;
}
#site_footer a.txtlink:before {
	content: "■";
	position: absolute;
	top: .8em;
	left: 0;
	color: #3B8CAF;
	font-size: 55%;
}

.footer_innerwrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
	padding: 20px 0 30px;
	width: 98%;
	max-width: 1400px;
}
.footer_about {
	width: 28%;
	max-width: 380px;
}
.footer_about p.footer_title {
	padding: 5px 0;
}
.footer_about p.footer_info {
	margin-top: 10px;
	font-size: 80%;
	line-height: 1.4em;
}


.footer_menu {
	flex: 1;
	margin: 0 1.5%;
}
.footer_menu ul.nav {
	margin: 0 auto;
}
.footer_menu ul.nav li {
	margin: 2px 0;
}

.footer_menu ul.nav li a {
	position: relative;
	padding-left: 1em;
	font-size: 80%;
}
.footer_menu ul.nav li a:before {
	content: "■";
	position: absolute;
	top: .4em;
	left: 0;
	color: #3B8CAF;
	font-size: 55%;
}

/*フッターの共通スタイル*/
.footer_innerwrap a,
.footer_innerwrap a:visited {
	color: #222;
	text-decoration: none;
}
.footer_innerwrap a:hover,
.footer_innerwrap a:active {
	text-decoration: underline dotted #555;
}

.footer_links {
	width: 50%;
}
.footer_links ul {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
}
.footer_links ul li {
	margin-left: 2%;
}
.footer_links ul li.foot_tel img {
	padding: 0 10px 10px 0;
}

/*コピーライト*/
#copyright {
	padding: 5px 0;
	font-size: 55%;
	text-align: center;
	letter-spacing: 0.25em;
	background: #EFEFEF;
}
#copyright a,
#copyright a:visited {
	color: #222;
	font-weight: 500;
	text-decoration: none;
}
#copyright a:hover,
#copyright a:active {
	text-decoration: underline;
}

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


 /*-------------------------------------------------------
----ご依頼の流れ-----------------------------------------
-------------------------------------------------------*/
.steps_wrap {
	margin: 0 auto;
	width: 1200px;
}
.steps_wrap ul {
	display: flex;
	justify-content: center;
	margin: 0 auto;
	padding: 0 10px;
}
.steps_wrap li {
	position: relative;
	width: 31%;
	list-style: none;
}
.steps_wrap li span#whitetxt {
	position: absolute;
    top: 9%;
    left: 2px;
    color: #fff;
    font-weight: bold;
    font-size: 130%;
}
.steps_wrap li span#whitetxt small {
	padding-right: 5px;
	font-size: 60%;
}

.steps_wrap li span {
	position: absolute;
	top: 46%;
	left: 2px;
	width: 160px;/*親要素の幅に沿ってテキストエリア可変*/
	font-size: 130%;
	text-align: center;
}
/*▼ステップ項目内の文字数がやや多めの時（小サイズ）*/
.steps_wrap li span.txts {
	margin-top: -5px;
	font-size: 92%;
	line-height: 1.3;
}
/*▼ステップ項目内の文字数が多めの時（極小サイズ）*/
.steps_wrap li span.txtss {
	margin-top: 10px;
	font-size: 68%;
	line-height: 1.2;
}

.steps_wrap li.step {
	background: url("images/pages/step_bg.png") no-repeat;
	background-size: contain;
	height: 163px;
}

.steps_wrap li.step_last {
	background: url("images/pages/step_bg.png") no-repeat;
	background-size: contain;
	height: 163px;
	width: 25%;/*rightarrowクラスを付けない分、幅を狭める*/
}

.steps_wrap li.rightarrow:after {
	content: "";
	display: inline-block;
	background-image: url("images/pages/rightarrow.png");
	background-size: contain;
	background-repeat: no-repeat;
	width: 13px;/*画像の幅*/
	height: 37px;/*画像の高さ*/
	position: absolute;
	top: 62px;
	right: 35px;
}

/* Posts and pages（問い合わせ）
--------------------------------------------- */
/*フォーム*/
.inquiry_list {
	margin: 80px auto 0;
	max-width: 1150px;
	overflow: hidden;
}
.inquiry_list p {
	margin-bottom: 0;
}
.inquiry_list dl {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	padding: 0 0 20px;
	width:100%;
	overflow: hidden;
}
.inquiry_list dt {
	margin: 0 0 1em;
	padding: 10px 0 0;
	width: 280px;
}
.inquiry_list dd {
	margin: 0 0 1em;
	padding:6px 0;
	width: calc(100% - 280px);
}
.inquiry_list input, .inquiry_list textarea, .inquiry_list select {
	margin: 0;
	padding: 5px 8px;
	font-size:1em;
}

/*.inquiry_list_confirm {
	margin-bottom: 15px;
	overflow: hidden;
}
.inquiry_list_confirm dl {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding:20px 0;
	width:100%;
	overflow: hidden;
}
.inquiry_list_confirm dt {
	padding:10px 20px 5px 0;
	width: 28%;
    border-bottom:solid 1px #e6e6e6;
}
.inquiry_list_confirm dd {
	padding:5px 0;
	width: 72%;
    border-bottom:solid 1px #e6e6e6;
}*/

.inquiry_list .must {
	position: relative;
	top: -.15em;
	left: 8px;
	display: inline;
    padding: 0 6px 2px;
    font-size: 11px;
    color: #cf1d05;
	border: 1px solid #cf1d05;
	user-select: none;
}

/*名前*/
.con_name {
	margin: 0 10px 0 0;
	width: 400px;
}
/*ふりがな*/
.con_kana {
	margin: 0 10px 0 0;
	width: 400px;
}
/*メールアドレス*/
.con_address {
	margin: 0 10px 0 0;
	width: 100%;
	max-width: 500px;
    ime-mode:disabled;
}

/*TEL*/
.con_tel {
	width: 190px;
    ime-mode:disabled;
}

/*郵便番号*/
.con_yubin {
	width: 120px;
    ime-mode:disabled;
}

/*住所*/
.con_jusyo {
	width: 600px;
    ime-mode:disabled;
}

/*お問い合わせ内容*/
.con_inquiry {
	width: 100%;
	height: 250px;
}

/*ラジオボタン*/
.wpcf7-radio .wpcf7-list-item {
	margin: 0 1.5em 0 0;
	user-select: none;
}
/*チェックボックス*/
.wpcf7-checkbox .wpcf7-list-item {
	margin: 0 10px 0 0;
    display:block;
	user-select: none;
}

/*必須項目未入力の場合*/
.wpcf7 span.wpcf7-not-valid-tip {
	display: inline-block;
	padding-left: 8px;
	font-size: 80%;
}
.wpcf7-spinner {
	display: none;
}


.kakomi {
	padding: 10px 15px;
	border:solid 1px #767676;
}

/*ご依頼から検査完了まで（post-14）*/
.irai_flow {
	margin: 0 auto;
	width:800px;
}
.post-14 .vk_flow_frame {
	background: #F7F7F7;
}
.post-14 .vk_flow_frame_text_title {
	color: #0099D0;
}

p.kensa-m {
	margin: 0;
	font-size:1.20em;
	color : red;
}

}