@charset "utf-8";

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

	グローバル

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

body { min-width: 0px; font-size: 0.9em; line-height: 1.8;}

.ta_right-s_center { text-align: center;}
.ta_left-s_center { text-align: center;}
.ta_center-s_left { text-align: left;}

.hidden_s { display: none !important;}

/* margin */
.mb40-20 { margin-bottom: 20px !important;}
.mb60-30 { margin-bottom: 30px !important;}
.mb80-40 { margin-bottom: 40px !important;}
.mb100-60 { margin-bottom: 60px !important;}
.mb120-60 { margin-bottom: 60px !important;}
.mb160-80 { margin-bottom: 80px !important;}
.mb40_sp { margin-bottom: 40px !important;}

/* ------------------------
	ヘッダー
------------------------ */

.header { padding: 0px 60px 0px 10px; line-height: 50px;}
.header h1 img { vertical-align: middle; width: 206px;}

select.sp_lang { border: solid 1px #000; border-radius: 3px; padding: 0.2em 0.4em; margin-left: 1em;}


/* ------------------------
	グローバルナビ
------------------------ */

.humberger {
	top: 0.3em;
	right: 1em;
	width: 45px;
	height: 45px;
	z-index: 1000001;
}

.humberger span {left: 12px;width: 20px;}

.humberger span:nth-of-type(1) { top: 14px;}
.humberger span:nth-of-type(2) { top: 21px;}
.humberger span:nth-of-type(3) { top: 28px;}
.humberger:after {left: 0;bottom: 1px;width: 100%;}
.is-open .humberger:after { content: '';}
.is-open .humberger span:nth-of-type(2) { opacity: 0;}
.is-open .humberger span:nth-of-type(3) {
  -webkit-transform: translateY(-8px) rotate(45deg);
	  -ms-transform: translateY(-8px) rotate(45deg);
		  transform: translateY(-8px) rotate(45deg);
}

.sp-navi {display: block;}
.sp-navi .sp-navi-inner .navi-main{margin-top: 50px;}

/* ------------------------
	フッター
------------------------ */
.footer .bg02 .container { display: block; }
.footer .box01 p{text-align: center;margin-bottom: 40px;}
.footer .box04 a{max-width: 360px; margin-left: auto;margin-right: auto;}

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

	トップページ

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

.top_sec01{
	position: relative;
	z-index: 99998;
	width: 100%;
	overflow: hidden;
	margin-bottom: 50px;
    padding: 0 0px;
    max-width: 780px;
    margin-left: auto;
    margin-right: auto;
}

.top_sec01 .box01{
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    width: 90%;
    transform: translate(-50%, -50%);
    border-radius: 10px;
	left: 50%;
	top: 65%;
    padding: 18px 1em;
}
.top_sec01 .box01 p{font-size: 1.5em;line-height: 1.4em;margin-bottom: 10px;}
.top_sec01 .box01 ul{display: block;}
.top_sec01 .box01 ul li{
    width: 11.5em;
    text-align: center;
    padding: 0.5rem 0.5rem;
    border-radius: 10px;
    font-size: 1.5em;
    background-image: none;
    background-color: white;
    color: #0B983F;
}
.top_sec01 .box01 ul li:not(:first-child){margin-left: auto;}
.top_sec01 .box01 ul li{margin-left: auto;margin-right: auto;}
.top_sec01 .box01 ul li:not(:last-child){margin-bottom: 5px;}

.top_sec02{
	margin-bottom: 60px;
    padding: 30px 15px;
}
.top_sec02 h2{font-size: 1.3em;margin-bottom: 20px;}
.top_sec03{margin-bottom: 50px;}
.top_sec03 .container > h2 span:nth-of-type(1){font-size: 1.4em;}
.top_sec03 .container > h2 span:nth-of-type(2){font-size: 1.1em;}
.top_sec03 .container .box01{padding: 30px;}
.top_sec03 .container .box01 p{font-size: 1.0em;margin-bottom: 20px;}

.top_sec04 .container{display: block;padding-bottom: 40px;}
.top_sec04 .container .box01{width: 100%}
.top_sec04 .container h2{margin-bottom: 20px;}
.top_sec04 .container h2 span:nth-of-type(1){font-size: 1.4em;}
.top_sec04 .container h2 span:nth-of-type(2){font-size: 1.1em;}
.top_sec04 .container .btn_green{margin: 0 auto;}


.top_ttl { font-size: 2em; padding: 20px 0px;}
.top_ttl .pos_ab { max-height: 50px; width: auto; bottom: 20px;}
.top_sec04 .container .news_dl{width: 100%;margin-left: auto;}

.news_dl a:after { right: 0.2em; width: 12px; height: 12px;}
.news_dl a:hover:after { right: -0.2em;}
.news_dl dl { padding-right: 25px;}
.news_dl dt { width: 100%; padding-left: 0px;}
.news_dl .category { width: 8em; padding-right: 1em;}

@media only screen and (max-width: 640px) {
	.news_dl dl { display: block;}
	.news_dl dl > * { display: inline-block;}
	.news_dl dt, .news_dl .category { width: auto; margin: 0px 0.5em 5px 0px;}
	.news_dl dd:last-child { display: block;}
}

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

.pagettl { padding: 1.2em 0px;}


/* ------------------------
	company
------------------------ */

.com_sec01 th { width: 7em;}

.com_sec02 .box01{display: block;}
.com_sec02 .box01 figure{width: 100%;max-width: 205px;margin: 0 auto 20px;}
.com_sec02 .box01 p{width: 100%;margin-left: auto;margin-right: auto;}

.com_sec03 section figure { width: 160px;}
/*.com_sec03 section .box_inner { width: calc(100% - 180px);}*/
.com_sec03 section .map { width: 100%; margin: 20px 0px;}

.com_sec04 th { width: 6.5em;}

.com_sec06 .box01 figure { width: 160px;}
.com_sec06 .box01 .box_inner { width: calc(100% - 180px);}


@media only screen and (max-width: 480px) {
/*	.com_sec03 section.mb25 { display: block; margin-bottom: 50px !important;}
	.com_sec03 section figure { width: auto; margin-bottom: 20px;}
	.com_sec03 section .box_inner { width: auto;}

	.com_sec06 .box01 { display: block;}
	.com_sec06 .box01 figure { width: auto; padding: 0px 35% 25px;}
	.com_sec06 .box01 .box_inner { width: auto;}
	.com_sec06 .box01 .text01, .com_sec06 .box01 .more_btn02 { text-align: center;}*/
}

/* ------------------------
	contact
------------------------ */

.con_sec01 h3.fo18 { font-size: 1.5em !important;}
.con_sec01 .list01 li:first-child { margin-right: 3em;}
.con_sec01 .list01 figure { padding: 0px 30%;}
.con_sec01 .list01 .tel { font-size: 2em;}

.contact_sec .btn_area input { font-size: 1.5em;}

@media only screen and (max-width: 640px) {
	.con_sec01 .list01 { font-size: 2.2vw;}
	
	.contact_sec dl, .contact_sec dl > * { display: block; width: auto !important;}
	.contact_sec dt { padding-bottom: 3px;}
	.contact_sec dt .hissu { float: none; margin-left: 0.6em;}
}

@media only screen and (max-width: 480px) {
	.con_sec01 .list01 { display: block; font-size: 1em;}
	.con_sec01 .list01 li:first-child { margin: 0px 0px 25px;}
	.con_sec01 .list01 figure img { width: 5em;}
}


/* ------------------------
	topics
------------------------ */

.single_art .news_dl dd:last-child { font-size: 1.65em;}

.blog_content h1 { font-size: 1.6em;}
.blog_content table { font-size: 0.9em;}

img.aligncenter, img.alignright, img.alignleft { display: block; margin: 20px auto; float: none;}

/* ページャー(シングル) */
.pager { margin: auto -10px;}
.pager a { margin-bottom: 10px;}
.pager li:not(.more_btn) a { width: 40px; height: 40px;}
.pager .more_btn { margin: 0px 1em;}
.pager .more_btn a { font-size: 1em;}

@media only screen and (max-width: 640px) {
	.single_art .news_dl dl > * { padding-top: 0px;}
}


/* ------------------------
	product
------------------------ */
.pro_sec01{padding-bottom: 40px;}
.pro_sec01 h3{font-size: 1.4em;}
.pro_sec01 ul {grid-template-columns: repeat(2, 1fr);}
@media (max-width: 480px) {
    .pro_sec01 ul {
        grid-template-columns: 1fr; /* 1列表示 */
    }
}


/* ------------------------
	各種提案・メンテナンス
------------------------ */
.maintenance_sec01 .box01,.maintenance_sec02 .box01,.maintenance_sec03 .box01,.maintenance_sec04 .box01{padding: 20px 20px;}
.maintenance_sec01 .box01 h3,.maintenance_sec02 .box01 h3,.maintenance_sec03 .box01 h3,.maintenance_sec04 .box01 h3{font-size: 1.4em;}
.maintenance_sec01 ul,.maintenance_sec02 ul{display: block;}
.maintenance_sec01 ul{margin-bottom: 20px;}
.maintenance_sec01 ul li{width: 100%;max-width: 720px;margin-left: auto;margin-right: auto;}
.maintenance_sec01 ul li a{font-size: 1.0em}
.maintenance_sec01 ul li:first-child{margin-bottom: 20px;}
.maintenance_sec02 ul li{width: 100%;}
.maintenance_sec02 ul li:first-child{margin-bottom: 20px;}
.maintenance_sec02 ul li:first-child{margin-bottom: 20px;}

.table_wrap{overflow-x: hidden;}
.owned-instruments-table_wrap thead {font-size: 1.1em;}
.owned-instruments-table_wrap thead tr th{padding: 1em;}
.owned-instruments-table_wrap tr td {font-size: 0.9em;}
.owned-instruments-table_wrap tbody td {padding: 1em 1em;}
@media (max-width: 557px) {
	.table_wrap{overflow-x: scroll;}
    .sp_hidden{display: block;margin-bottom: 0;}
}


/* ------------------------
	投稿
------------------------ */

.news_list > li { width: 33.3333%;}
.news_list h3 { min-height: 0px;}

.article_wrap h1 { font-size: 1.65em;}

/* 見出し */
.single_article h2 { font-size: 1.4em;}
.single_article h3 { font-size: 1.3em;}

/*WP用 投稿表示*/
img.aligncenter, img.alignright, img.alignleft {
	display: block;
	margin: 0px auto;
}
.alignright, .alignleft { float: none;}

/* ページャー(シングル) */
.pager li { margin: 0px 10px 5px;}
.pager li a { font-size: 0.8em;}
.pager .previous, .pager .next { position: static;}

.writer_box { padding: 45px 15px 15px;}
.writer_box h2 { padding: 1px 20px 3px;}
.writer_box .left { width: 25%; max-width: 200px;}
.writer_box .box_inner { padding-left: 15px;}

/* 投稿者情報 */
@media only screen and (max-width: 640px) {
	.news_list > li { width: 50%;}
}

/* ------------------------
	よくある質問
------------------------ */
.faq_sec01 h3{font-size: 1.75em;}
.faq_sec01 .box_green{padding: 30px 20px;}
.faq_sec01 .faq_box{padding: 15px 20px;}
.faq_sec01 .faq_box .faq_q{padding-bottom: 10px;}
.faq_sec01 .faq_box .faq_a{margin-top: 10px;}

