@charset "utf-8";
/* Author: c.nz */
/* ---------------------------------------------------
	common
------------------------------------------------------ */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, a { margin: 0; padding: 0; border: 0; outline: 0; vertical-align: baseline; -webkit-box-sizing: border-box; box-sizing: border-box;}
ol, ul { list-style: none; }
i, cite, em, var, address, dfn {font-style: normal;}

body {font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-display: swap; font-size: 100%; -webkit-text-size-adjust:100%;}

.acms-container {max-width: 100%; padding-left: 0; padding-right: 0;}
.acms-container #adminBox {margin-bottom: 0;}
.slick-dots li.slick-active button {background: none;}
.js-edit_inplace-hovering{left:50% !important; transform:translateX(-50%);}

#container {width: 100%; margin: 0 auto; overflow: hidden; position: relative;}

.container {width: 100%; max-width: 1200px; margin: 0 auto;}
.container:after {content: ""; clear: both; display: block;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	#container {padding-top: 60px;}
}
@media screen and (max-width: 844px) and (orientation:landscape) {
	.page-title-inner .page-title{padding: 0 40px;}
}

a {-webkit-transition: all ease 0.2s; -moz-transition: all ease 0.2s; -o-transition: all ease 0.2s; transition: all ease 0.2s; box-sizing: border-box;}
a:link, a:visited {color: #222; text-decoration: none;}
a:hover, a:visited {color: #222; text-decoration: none;}
a:hover {opacity: .7;}
.entry-column a:visited {color: #222;}
a[href^="tel:"] {pointer-events: none;text-decoration: none;}

img {max-width: 100%; height: auto; line-height: 1; vertical-align: bottom;}
img.max {width: 100%;}

p {line-height: 1.8; margin: 0;}

.flexbox {display: -ms-flexbox; display: -webkit-box; display: flex; flex-wrap: wrap; align-items: top; justify-content: space-between;}
.flexbox.mid {align-items: center;}
.flexbox.center {justify-content: center;}
.flexbox.reverse {flex-direction: row-reverse;}

.flL {float: left;}
.flR {float: right;}

.taL {text-align: left;}
.taC {text-align: center;}
.taR {text-align: right;}

.rel {position: relative;}

.mincho {font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.gothic {font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}

.w20 {width: 20%;}
.w30 {width: 30%;}
.w70 {width: 70%;}
.w80 {width: 80%;}
.w1200 {max-width: 1200px;}

.txt-lll {font-size: 1.375em;}
.txt-ll {font-size: 1.25em;}
.txt-l {font-size: 1.125em;}
.txt-s {font-size: 0.875em;}
.txt-ss {font-size: 0.75em;}
.txt-sss {font-size: 0.625em;}

.tcol-red {color: red;}
.tcol-orange {color: orange;}
.tcol-yellow {color: yellow;}
.tcol-green {color: darkgreen;}
.tcol-blue {color: blue;}
.tcol-purple {color: purple;}

.pc-only {display: block;}
.sp-only {display: none;}
.pc-block {display: block;}
.sp-block {display: none;}
.pc-inline {display: inline;}
.sp-inline {display: none;}


@media screen and (max-width: 1366px) {
}

@media screen and (max-width: 1024px) {
}

.acms-admin-module-edit-wrapper{z-index: auto;}


/* IE用対応 */
/*
_:-ms-fullscreen . {}
*/

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
/*背景固定する場合	html.is-fixed,
	html.is-fixed body {height: 100%;overflow: hidden;}*/
	body {}
	a:hover img {opacity: 1;}
	a[href^="tel:"] {pointer-events: auto;}
	.container {max-width: 100%;}
	p {line-height: 1.4;}
	.w1200 {width: auto;}
	.pc-only {display: none !important;}
	.sp-only {display: block;}
	.pc-block {display: none !important;}
	.sp-block {display: block;}
	.pc-inline {display: none !important;}
	.sp-inline {display: inline;}
	.pc-hidden {display: block;}
}

/* ---------------------------------------------------
	bg-change
------------------------------------------------------ */
/*.bg-change01 { background-color: #FFF;}
.bg-change02 { background-color: #222;}
.bg-change03 { background-color: #00F;}*/

/* ---------------------------------------------------
	font-size-change
------------------------------------------------------ */
/*.is-fs-m {font-size: 120%;}
.is-fs-l {font-size: 140%;}*/


/* pn creative. */
/* ----------------------------- リセット */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, var, b, i, dl dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

body { line-height: 1; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

ol, ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ""; content: none; }

a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

ins { background-color: #ff9; color: #222; text-decoration: none; }

mark { background-color: #ff9; color: #222; font-style: italic; font-weight: bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }

table { border-collapse: collapse; border-spacing: 0; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }

input, select { vertical-align: middle; }

img { vertical-align: top; font-size: 0; line-height: 0; }

sup { font-size: 8px; }

em { font-style: normal; }

/*div:before, div:after, ul:before, ul:after, ol:before, ol:after, dl:before, dl:after { content: ""; display: block; }*/

div:after, ul:after, ol:after, dl:after { clear: both; }

div, ul, ol, dl { zoom: 1; }

ul#wp-admin-bar-root-default:after { clear: none; }

/* ----------------------------- 全体 */
html { font-size: 62.5%; }

@media screen and (max-width: 1440px) { html { font-size: 59.03%; } }
@media screen and (max-width: 1366px) { html { font-size: 55.556%; } }
@media screen and (max-width: 1280px) { html { font-size: 52.0834%; } }
@media screen and (max-width: 1024px) { html { font-size: 48.61111%; } }
body { font-size: 18px; font-size: 1.8rem; font-size: 18px; font-size: 1.8rem; line-height: 1.8em; color: #222222; font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-weight: 300; background: #fff; position: relative; min-width: 1000px; }
@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) { body { min-width: 0; min-width: initial; } }

.l-contents { overflow: hidden; }

a:link, a:visited { color: inherit; text-decoration: none; }
a:hover, a:active { text-decoration: underline; }
a, a img { -webkit-transition: 0.2s ease all; -moz-transition: 0.2s ease all; -ms-transition: 0.2s ease all; transition: 0.2s ease all; }
a:hover img { opacity: 0.65; -ms-filter: "alpha(opacity=65)"; filter: alpha(opacity=65); }

@media screen and (min-width: 768px) { .sp-only { display: none !important; } }
@media screen and (max-width: 767px) { .pc-only { display: none !important; } }
img, .bx-wrapper img { max-width: 100%; height: auto; }

h1 { line-height: 1; }

h2, h3, h4, h5, h6 { font-weight: 500; line-height: 1.4; }

.en { font-family: 'Roboto', sans-serif; font-weight: 700; line-height: 1; }

#container { padding-top: 8rem; }

@media screen and (min-width: 768px) { a[href^="tel:"] { pointer-events: none; } }
/* pn creative. */

/* ----------------------------- 1. 各ページ共通 */
/*=======================================
ヘッダー
=========================================*/
header { position: absolute; left: 0; top: 0; width: 100%; z-index: 1999; }

.l-header { padding: 18px 50px 12px; display: flex; justify-content: space-between; align-items: center; position: relative; top: 0; left: 0; width: 100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; transition: 0.3s ease all; z-index: 9999;}
.l-header:before, .l-header:after { display: none; }
.l-header-nav { display: flex; align-items: center; justify-content: flex-end; }
.l-header-nav:before, .l-header-nav:after { display: none; }
.l-header-nav .l-nav ul { display: flex; align-items: center; }
.l-header-nav .l-nav ul:before, .l-header-nav .l-nav ul:after { display: none; }
.l-header-nav .l-nav li > a { display: block; padding: 4px 1.3vw; font-weight: 500; line-height: 140%; text-decoration: none; letter-spacing: 0.05em; }
.l-header-nav .l-nav > ul > li > a:hover { color: #0099B2; }
.l-header-nav .l-nav > ul > li { position: relative; }
/* .l-header-nav .l-nav > ul > li:hover > ul { color: #0099B2; } */
.l-header-nav .l-nav > ul > li > ul > li > a:hover{color: #0099B2;}
.l-header-nav .l-nav > ul > li.js-pulldown:hover > a { background-image: url(../images/common/arrow-2-up-green.svg); }
.l-header-nav .l-nav > ul > li.js-pulldown:hover > a:before { width: calc(100% - 22px); }
.l-header-nav .l-nav > ul > li.js-pulldown > a { text-decoration: none; }
.l-header-nav .l-nav > ul > .js-pulldown > a { display: block; background: url(../images/common/arrow-2-down.svg) no-repeat right center; background-size: 13px 8px; padding-top: 7px; padding-bottom: 7px; padding-right: 22px; position: relative; font-weight: 500;}
.l-header-nav .l-nav > ul > li.js-pulldown{padding-right: 1.3vw;}
.l-header-nav .l-nav > ul > .js-pulldown > a:before { display: block; content: ""; position: absolute; left: 0; bottom: 0; width: 0; height: 2px; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; transition: 0.3s ease all; background: #0099B2; }
.l-header-nav .l-nav > ul > li > ul { position: absolute; left: 0; display: none; padding: 25px 20px; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); border-radius: 0 10px 10px 10px; background: #fff; }
.l-header-nav .l-nav > ul > li > ul > li { margin-bottom: 25px; white-space: nowrap; }
.l-header-nav .l-nav > ul > li > ul > li:last-child { margin-bottom: 0; }
.l-header-nav .l-nav > ul > li > ul > li > a { padding: 0; background: url(../images/common/arrow-1-gray.svg) no-repeat left center; background-size: 16px 16px; padding-left: 21px; font-size: 17px; font-size: 1.7rem; line-height: 120%; letter-spacing: 0; }
.l-header-nav .block-search { padding-left: 40px; border-left: 1px dotted #AAAAAA; margin-left: 15px; }
.l-header-nav .l-nav .block-search { padding-left: 0; border-left: none; margin-left: auto; text-align: center; margin-top: 20px;}

/*.c-search input { padding: 0; border: none; border-radius: 0; outline: none; background: none; padding: 1rem 1.5rem 1rem 0.5em; border-radius: 0.3rem; background: url(../images/common/icon-search.svg) right 1rem center no-repeat; background-size: 16px 16px; background-color: #EEF3F9; margin-left: 1rem; width: 24rem; box-sizing: border-box; height: 35px; font-size: 16px;}
.c-search span {font-weight: 500;}*/
.c-search input {-webkit-appearance: none;  padding: 0; border: none; border-radius: 0; outline: none; background: none; padding: 1rem 1.5rem 1rem 0.5em; border-radius: 0.3rem 0 0 0.3rem; background-color: #EEF3F9; margin-left: 1rem; width: 20rem; height: 2.8rem; box-sizing: border-box; font-family: "Noto Sans JP"; font-size: 1.6rem !important; }
.c-search span { font-weight: 500; }
.c-search button { padding: 0; border: none; border-radius: 0; outline: none; background: none; padding: 1rem 1.5rem 1rem 0.5em; border-radius: 0 0.3rem 0.3rem 0; background: url(../images/common/icon-search.svg) no-repeat center/16px; background-color: #EEF3F9; width: 4rem; height: 2.8rem; box-sizing: border-box; vertical-align: middle;}

.l-header-logo a:hover,
.l-header-logo a:hover img { opacity: 1; }
@media screen and (min-width: 1451px) and (max-width: 1680px) { .l-header { padding-left: 20px; padding-right: 20px; }
  .l-header-logo { width: 20%; }
  .l-header-logo a:hover,
  .l-header-logo a:hover img { opacity: 1; }
  .l-header-nav .l-nav { font-size: 17px; }
  .l-header-nav .l-nav li > a { padding-left: 0.8vw; padding-right: 0.8vw; }
  .l-header-nav .block-search { margin-left: 10px; padding-left: 20px; } }
@media screen and (min-width: 1181px) and (max-width: 1450px) { .l-header { padding-left: 20px; padding-right: 20px; }
  .l-header-logo { width: 15%; }
  .l-header-nav .l-nav { font-size: 15px; }
  .l-header-nav .l-nav li > a { padding-left: 0.8vw; padding-right: 0.8vw; }
  .l-header-nav .block-search { margin-left: 10px; padding-left: 10px; }
  .l-header-nav .block-search span { font-size: 15px; } }
@media screen and (min-width: 768px) and (max-width: 1180px) { .l-header { padding-left: 15px; padding-right: 15px; }
  .l-header-logo { width: 10%; }
  .l-header-nav .l-nav { font-size: 14px; }
  .l-header-nav .l-nav li > a { padding-left: 0.6vw; padding-right: 0.6vw; }
  .l-header-nav .block-search { margin-left: 6px; padding-left: 6px; }
  .l-header-nav .block-search span { font-size: 14px; } }

#header.is-over .l-header { animation: fadeIn 0.3s ease-in-out; position: fixed; background: #fff; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); z-index: 9999;}
@keyframes fadeIn { 0% { opacity: 0; top: -1rem; }
  100% { opacity: 1; top: 0; } }
/* ----------------------------- スマホ（～767px） */
@media screen and (max-width: 767px) {
  header { position: fixed; background: #fff; }
  .l-header { padding: 0; }
  .l-header-logo { padding: 10px; position: relative; z-index: 9999; }
  .l-header-logo img { width: 100%; }
  .l-header-nav .l-nav { display: none; margin-top: 0rem; padding-top: 6rem; background-color: #fff; position: fixed; top: 0; left: 0; width: 100%; box-sizing: border-box; height: 100%; z-index: 9997; background-color: #fff; overflow-y: auto; height: 100%; height: calc(100% - 5rem); height: calc(100vh - 5rem); }
  .l-header-nav .l-nav ul { text-align: left; display: block; padding-bottom: 60px;}
  .l-header-nav .l-nav li { display: block; padding: 0; border-bottom: 1px solid #EEF3F9; font-size: 18px; font-size: 1.8rem; position: relative; }
  .l-header-nav .l-nav li::after { content: ""; position: absolute; top: 2.4rem; right: 0.9rem; margin: auto 0; display: inline-block; *display: inline; *zoom: 1; width: 1.8rem; height: 1.8rem; border-radius: 50%; background: url(../images/common/arrow-w.svg) center no-repeat; background-size: 0.6rem 0.9rem; background-color: #0099B2; margin-right: 0.5em; }
  .l-header-nav .l-nav li:first-of-type { border-top: 1px solid #EEF3F9; }
  .l-header-nav .l-nav li a { padding: 2rem; display: block; }
  .l-header-nav .l-nav > ul > li:hover > a { color: #222; }
  .l-header-nav .l-nav > ul > li:hover a span { background-image: url(../images/common/arrow-2-down.svg);}
.l-header-nav .l-nav > ul > li.js-pulldown > a { padding: 2rem; background-position-x: calc(100% - 20px);}
.l-header-nav .l-nav > ul > li.js-pulldown {padding-right: 0;}
  .l-header-nav .l-nav > ul > li.is-open > a { color: #0099B2;}
  .l-header-nav .l-nav > ul > li.is-open > a span { background-image: url(../images/common/arrow-2-up-green.svg); }
  .l-header-nav .l-nav > ul > li.is-open > a span:before { width: calc(100% - 22px); }
  .l-header-nav .l-nav > ul > li::after { display: none; }
  .l-header-nav .l-nav > ul > li > a span { padding-top: 0; padding-bottom: 0; }
  .l-header-nav .l-nav > ul > li > a span:before { display: none; }
  .l-header-nav .l-nav > ul > li > ul { position: static; left: auto; box-shadow: none; background: #f8f8f8; padding-top: 10px; padding-bottom: 10px; }
  .l-header-nav .l-nav > ul > li > ul > li { margin-top: 0; margin-bottom: 0; padding: 15px 0;}
  .l-header-nav .l-nav > ul > li > ul > li::after { display: none; }
  .l-header-nav .l-nav > ul > li > ul > li:first-of-type { border-top: 0; }
  .l-header-nav .l-nav > ul > li > ul > li:last-child { border-bottom: 0; }
  .l-header-nav .l-nav > ul > li > ul > a { padding-top: 15px; padding-bottom: 15px; }
  .hdr-contact { -webkit-position: fixed; -moz-position: fixed; position: fixed; bottom: 0; left: 0; width: 100%; box-sizing: border-box; z-index: 9999; }
  .hdr-contact ul { display: flex; justify-content: center; align-items: center; }
  .hdr-contact ul li { width: calc(50% - 30px); }
  .hdr-contact ul li a { display: block; width: 100%; box-sizing: border-box; height: 6rem; display: flex; justify-content: center; align-items: center; text-decoration: none !important; transition: opacity 0.1s; opacity: 1; background-color: #0099B2; font-weight: 500; color: #fff; }
  .hdr-contact ul li a:hover { text-decoration: none !important; opacity: 0.8; }
  .hdr-contact ul li a .i { line-height: 1; margin-right: 1rem; }
  .hdr-contact ul li:nth-of-type(2) a { background-color: #ECF1F2; color: #0099B2; }
  .hdr-contact ul li:nth-of-type(3) { width: 60px; }
  .hdr-contact ul li:nth-of-type(3) a { background-color: #D2ECF1; }
  /*======================================= ハンバーガーメニュー =========================================*/
  .block-hamburger { background-color: #0099B2; position: relative; z-index: 9999; width: 6rem; height: 6rem; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; padding-top: 0.7rem; /* ナビが開いてる時のボタン */ }
  .block-hamburger::after { content: "MENU"; font-weight: bold; font-size: 10px; font-size: 1rem; color: #fff; line-height: 1; letter-spacing: 0.05em; margin-top: 0.7rem; }
  .block-hamburger .box { display: block; width: 3.4rem; height: 2.4rem; position: relative; z-index: 9999; cursor: pointer; text-align: center; pointer-events: auto; transition: 0.25s; }
  .block-hamburger .box span { display: block; width: 100%; height: 2px; position: absolute; left: 13px; left: 0; border-radius: 3px; background: #fff; -webkit-transition: 0.25s ease-in-out; -moz-transition: 0.25s ease-in-out; -ms-transition: 0.25s ease-in-out; transition: 0.25s ease-in-out; }
  .block-hamburger .box span:nth-child(1) { top: 0; }
  .block-hamburger .box span:nth-child(2) { top: 1.1rem; }
  .block-hamburger .box span:nth-child(3) { top: 2.2rem; }
  .block-hamburger.is-active::after { content: "CLOSE"; }
  .block-hamburger.is-active .box span { -webkit-transition: 0.2s ease-in-out; -moz-transition: 0.2s ease-in-out; -ms-transition: 0.2s ease-in-out; transition: 0.2s ease-in-out; }
  .block-hamburger.is-active .box span:nth-child(1) { -webkit-transform: translateY(1.1rem) rotate(45deg); -moz-transform: translateY(1.1rem) rotate(45deg); transform: translateY(1.1rem) rotate(45deg); }
  .block-hamburger.is-active .box span:nth-child(2) { -webkit-transform: translateY(0rem) rotate(-45deg); -moz-transform: translateY(0rem) rotate(-45deg); transform: translateY(0rem) rotate(-45deg); }
  .block-hamburger.is-active .box span:nth-child(3) { -webkit-transform: translateY(-1.1rem) rotate(-45deg); -moz-transform: translateY(-1.1rem) rotate(-45deg); transform: translateY(-1.1rem) rotate(-45deg); }

  .c-search input { padding: 0; border: none; border-radius: 0; outline: none; background: none; padding: 1rem 1.5rem 1rem 0.5em; border-radius: 0.3rem 0 0 0.3rem; background-color: #EEF3F9; margin-left: 1rem; width: 20rem; height: 4rem; box-sizing: border-box; }
  .c-search span { font-weight: 500; font-size: 1.6rem;}
  .c-search button { padding: 0; border: none; border-radius: 0; outline: none; padding: 1rem 1.5rem 1rem 0.5em; border-radius: 0 0.3rem 0.3rem 0; width: 4rem; height: 4rem; box-sizing: border-box; vertical-align: middle;}

  .l-header-nav .l-nav > ul > li.js-pulldown:hover > a { background-image: url(../images/common/arrow-2-down.svg);}
  .l-header-nav .l-nav > ul > li.js-pulldown.is-open > a{background-image: url(../images/common/arrow-2-up-green.svg);}
  .l-header-nav .l-nav > ul > li.js-pulldown:hover > a:before{width: 0;}
  .l-header-nav .l-nav > ul > li.js-pulldown.is-open > a:before{width: 100%;}

  .l-header-nav .l-nav .block-search{margin-bottom: 20px;}

  .l-header-logo{width: 22.8rem;}
}
@media screen and (max-width: 844px) and (orientation:landscape) {
  .l-header-nav .l-nav > ul > .js-pulldown > a,
  .l-header-nav .l-nav > ul > li > a{font-size: 12px;}
  .l-header-nav .l-nav > ul > li > ul > li > a{font-size: 12px;}
  .l-header-logo{width:18rem; padding: 0; padding-left: 10px;}
}
@media screen and (max-width: 843px) and (orientation:landscape) {
  .l-header-logo{width:27rem;}
}
/* ---------------------------------------------------
	btn_menu
------------------------------------------------------ */
.btn_menu {display: none; position: fixed; right: 15px; top: 10px; width: 100px; height: 100px; padding: 20px 20px 15px; cursor: pointer; text-align: center; z-index: 9999; background: #0E2239;}
.btn_menu .menu-trigger {display: inline-block; position: relative; width: 40px; height: 32px; box-sizing: border-box; transition: all .4s;}
.btn_menu .menu-trigger span {display: inline-block; transition: all .4s; box-sizing: border-box; position: absolute; left: 0; width: 100%; height: 3px; background-color: #FFF;}
.btn_menu .menu-trigger span:nth-of-type(1) {top: 0;}
.btn_menu .menu-trigger.active span:nth-of-type(1) {top: 4px;}
.btn_menu .menu-trigger span:nth-of-type(2) {top: 14px;}
.btn_menu .menu-trigger span:nth-of-type(3) {bottom: 0;}
.btn_menu .menu-trigger.active {-webkit-transform: rotate(180deg); transform: rotate(180deg);}
.btn_menu .menu-trigger.active span {}
.btn_menu .menu-trigger.active span:nth-of-type(1) {-webkit-transform: translateY(10px) rotate(-35deg); transform: translateY(10px) rotate(-35deg);}
.btn_menu .menu-trigger.active span:nth-of-type(2) {-webkit-transform: translateY(0) rotate(35deg); transform: translateY(0) rotate(35deg);}
.btn_menu .menu-trigger.active span:nth-of-type(3) {opacity: 0;}
.btn_menu .txt {color: #FFF; font-size: 12px; font-family: Arial, Helvetica, "sans-serif"; font-weight: bold; margin-top: 4px;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.btn_menu {display: block; width: 60px; height: 60px; padding: 10px 10px 15px;}
	.btn_menu .menu-trigger {width: 40px; height: 26px;}
	.btn_menu .menu-trigger span {height: 2px;}
	.btn_menu .menu-trigger span:nth-of-type(1) {top: 0;}
	.btn_menu .menu-trigger.active span:nth-of-type(1) {top: 2px;}
	.btn_menu .menu-trigger span:nth-of-type(2) {top: 12px;}
	.btn_menu .menu-trigger span:nth-of-type(3) {bottom: 0;}
}


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

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
}

/* ---------------------------------------------------
	下層ページタイトル
------------------------------------------------------ */
.pagetit {width: 172rem; max-width: calc(100% - 20px); margin: 0 auto; height: calc(100vw * 200 / 1920); position: relative; background: #D2ECF1; text-align: center; border-radius: 4rem; display: flex; justify-content: center; align-items: center;}
.pagetit .page-title {margin: 0 auto; font-size: 4.2rem; font-weight: 500; line-height: 1.4; color: #222; letter-spacing: 0.05em;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
.pagetit {width: calc(100% - 20px); max-width: 100%; height: 100px; border-radius: 2rem; margin-top: 10px;}
.pagetit .page-title {font-size: 20px;}
}

/* ---------------------------------------------------
	パンくず
------------------------------------------------------ */
.topicpath { background: none; width: 100%; text-align: center; padding: 20px 0; margin-bottom: 60px;}
.topicpath .acms-container {max-width: 1200px; line-height: 1;}
.topicpath-list { width: 100%; padding: 0; text-align: center;}
.topicpath-item { float: none; display: inline-block; background: none; padding: 0; font-size: 15px; line-height: 1.2; font-weight: 200; }
.topicpath-item a {display: inline;}
.topicpath-item:first-child { padding: 0;}
.topicpath-item:before { display: inline-block; content: "/"; padding: 0 10px;}
.topicpath-item:first-child:before { display: inline-block; content: ""; padding: 0;}
.topicpath-link { font-size: 15px; font-weight: 200;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.topicpath {margin-bottom: 20px;}
}

@media screen and (max-width: 844px) and (orientation:landscape) {
	.topicpath{padding-left: 40px;}
}

/* ---------------------------------------------------
	pager
------------------------------------------------------ */
.pager {display: -ms-flexbox; display: -webkit-box; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 40px 0;}
.pager li,
.pager li > span, 
.pager li a {display: -ms-flexbox; display: -webkit-box; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center;}
.pager li {width: 50px; height: 50px; border-radius: 100px; font-size: 20px; background: #ECF1F2; overflow: hidden;}
.pager li.prev, .pager li.next {border: none; border-radius: 0; background: none;}
.pager li.cur {background: #0099B2; color: #FFF; border-radius: 100px;}
.pager li > span {width: 100%; height: 100%;}
.pager li a {width: 100%; height: 100%; color: #222; text-decoration: none; background: #ECF1F2; font-family: "Noto Sans JP"; font-weight: 500;}
.pager-link {background: #FFF; padding: 10px;}
.pager-link:active, .pager-link:focus, .pager-link:visited { color: #222;}
.pager-link:hover {background: #0099B2; color: #FFF; border-radius: 100px; opacity: 1; }
.pager li.prev .pager-link, .pager li.next .pager-link,
.pager li.prev .pager-link:hover, .pager li.next .pager-link:hover {background: none; color: #222; }

.serial-nav {width: 100%; max-width: 1200px; margin: 0 auto 50px; display: flex; justify-content: space-between; align-items: center;}
.serial-nav::before,.serial-nav::after{content: none;}
.serial-nav .serial-nav-prev {text-align: left; min-width: 240px;}
.serial-nav .serial-nav-next { text-align: right; min-width: 240px;}
.serial-nav .serial-nav-center { text-align: center;}
.serial-nav .serial-nav-prev a img,
.serial-nav .serial-nav-next a img,
.serial-nav .serial-nav-center a img{margin-top: 4px; margin-left: 5px;}
.serial-nav a {display: block; padding: 15px 0; color: #222; font-weight: 500; text-decoration: underline; font-size: 17px; line-height: 1.4; border: none;}
.serial-nav a:active, .serial-nav a:focus, .serial-nav a:hover, .serial-nav a:visited {color: #222;}
.serial-nav a:hover {text-decoration: none;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.pager {margin: 20px 0;}
	.pager li {margin-bottom: 10px;}
	
	.serial-nav .serial-nav-prev {min-width: 0;}
	.serial-nav .serial-nav-next {min-width: 0;}
	
	.serial-nav { padding: 0 10px; flex-wrap: wrap;}
	.serial-nav .serial-nav-item { width: 48%;}
	.serial-nav .serial-nav-item.serial-nav-center { width: 100%; order: 10; margin-top: 10px;}
	.serial-nav a {}
}

/* ---------------------------------------------------
	子ブログindex
------------------------------------------------------ */
.koblog {width: 100%; max-width: 1200px; margin: 0 auto; padding: 50px 0; }
.koblog .koblog-card-wrap { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-top: 30px; }
.koblog .koblog-card { width: 22.5%; margin-right: 3.33%; margin-bottom: 40px;}
.koblog .koblog-card:nth-child(4n) { margin-right: 0; }
.koblog .koblog-card .image {max-width: 270px; height: 180px; overflow: hidden; position: relative;}
.koblog .koblog-card .image img {position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 100%; height: auto;}
.koblog .koblog-card .koblog-card-inner { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; justify-content: space-between; -ms-flex-align: center; -webkit-box-align: center; align-items: center; margin-top: 15px; }
.koblog .koblog-card .date { -webkit-box-flex: 0; -ms-flex: none; flex: none; margin-right: 10px; font-size: 20px; font-size: 1.25rem; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝",'Noto Serif JP', serif; line-height: 1; }
.koblog .koblog-card .category { -webkit-box-flex: 0; -ms-flex: none; flex: none; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; height: 24px; min-width: 100px; padding: 0 10px; font-size: 14px; font-size: 0.875rem; color: #fff; background: #00469C; }
_:-ms-fullscreen, :root .koblog .koblog-card .category { padding-top: 4px; }
.koblog .koblog-card .text { margin-top: 10px; }


@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
.koblog { padding: 0 15px 60px; }
.koblog .koblog-card-wrap { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-top: 30px; }
.koblog .koblog-card { width: 100%; margin-bottom: 25px; margin-right: 0;}
.koblog .koblog-card:last-child { margin-right: 0; }
.koblog .koblog-card .koblog-card-inner { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; justify-content: space-between; -ms-flex-align: center; -webkit-box-align: center; align-items: center; margin-top: 15px; }
.koblog .koblog-card .image {max-width: 100%; max-height: 180px;}
.koblog .koblog-card img { width: 100%; }
.koblog .koblog-card .date { -webkit-box-flex: 0; -ms-flex: none; flex: none; margin-right: 10px; font-size: 18px; font-size: 1.125rem; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝",'Noto Serif JP', serif; line-height: 1; }

.koblog .koblog-card .category { -webkit-box-flex: 0; -ms-flex: none; flex: none; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; height: 24px; min-width: 100px; padding: 0 10px; font-size: 14px; font-size: 0.875rem; color: #fff; background: #00469C; }

.koblog .koblog-card .text { margin-top: 10px; }

.koblog .c-btn1 { margin-top: 25px; }
}
@media screen and (max-width: 844px) and (orientation:landscape) {
.koblog .koblog-card { width: 49%; margin-right: 2%;}
.koblog .koblog-card:nth-child(2n) { margin-right: 0;}
}

/* ---------------------------------------------------
	子ブログindex - news用
------------------------------------------------------ */

.koblog-news {width: 100%; max-width: 1200px; margin: 0 auto; padding: 50px 0; }
.koblog-news .koblog-card-wrap { display: block; margin-top: 30px; }
.koblog-news .koblog-card { width: 100%; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 10px 0;}
.koblog-news .koblog-card .image {width: 100px; height: 100px; overflow: hidden; position: relative; margin-right: 20px;}
.koblog-news .koblog-card .image img {position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 100%; height: auto;}
.koblog-news .koblog-card .koblog-card-inner { display: block; width: calc(100% - 120px); }
.koblog-news .koblog-card .meta { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: start; -webkit-box-pack: start; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%;}
.koblog-news .koblog-card .category { -webkit-box-flex: 0; -ms-flex: none; flex: none; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; height: 24px; min-width: 100px; padding: 0 10px; font-size: 14px; font-size: 0.875rem; color: #fff; background: #00469C; margin-right: 20px;}
_:-ms-fullscreen, :root .koblog-news .koblog-card .category { padding-top: 4px; }
.koblog-news .koblog-card .date { -webkit-box-flex: 0; -ms-flex: none; flex: none; margin-right: 10px; font-size: 18px; line-height: 1; font-weight: 500;}
.koblog-news .koblog-card .text { margin-top: 10px; font-size: 18px; font-weight: 500;}


@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.koblog-news {width: 100%; max-width: 100%; margin: 0 auto; padding: 0 10px; }
	.koblog-news .koblog-card-wrap { display: block; margin-top: 10px; }
	.koblog-news .koblog-card { width: 100%; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 10px 0;}
	.koblog-news .koblog-card .image {width: 100px; height: 100px; overflow: hidden; position: relative; margin-right: 10px;}
	.koblog-news .koblog-card .image img {position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 100%; height: auto;}
	.koblog-news .koblog-card .koblog-card-inner { display: block; width: calc(100% - 110px); }
	.koblog-news .koblog-card .meta { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: start; -webkit-box-pack: start; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%;}
	.koblog-news .koblog-card .category { -webkit-box-flex: 0; -ms-flex: none; flex: none; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; height: 24px; min-width: 100px; padding: 0 10px; font-size: 14px; font-size: 0.875rem; color: #fff; background: #00469C; margin-right: 20px;}
	.koblog-news .koblog-card .date {font-size: 16px;}
	.koblog-news .koblog-card .text { font-size: 16px;}
}


/* ---------------------------------------------------
	子ブログindex - 製品化事例用
------------------------------------------------------ */

.koblog-case {width: 100%; max-width: 1200px; margin: 0 auto; padding: 50px 0; }
.koblog-case .koblog-card-wrap { display: flex; justify-content: space-between; align-items: stretch; flex-wrap: wrap; margin-top: 30px; }
.koblog-case .koblog-card {display: block; width: 48.4%; max-width: 580px; margin-right: 3.2%; margin-bottom: 60px; position: relative;}
.koblog-case .koblog-card:hover {text-decoration: none;}
.koblog-case .koblog-card:nth-child(2n) { margin-right: 0; }
.koblog-case .koblog-card .image {max-width: 580px; height: 360px; overflow: hidden; position: relative; z-index: 1;}
.koblog-case .koblog-card .image img {object-fit: cover; width: 100%; height: 100%;}
.koblog-case .koblog-card .koblog-card-inner { display: flex; flex-direction: column; justify-content: center; align-items: center; background: #F3F3F3; border-radius: 20px; width: 82.76%; max-width: 480px; height: 160px; margin: auto; margin-top: -80px; position: relative; z-index: 2; padding: 40px 10%; font-feature-settings: "palt";}
.koblog-case .koblog-card .koblog-card-inner::before,
.koblog-case .koblog-card .koblog-card-inner::after {content: none;}
.koblog-case .koblog-card .case-tit {border-bottom: 1px solid #BBBBBB; font-size: 20px; font-weight: 700; padding-bottom: 10px; line-height: 1; width: 100%; letter-spacing: 0.05em;}
.koblog-case .koblog-card .case-tit span{font-weight: 400; margin-right: 1em;}
.koblog-case .koblog-card .case-company {font-size: 16px; font-weight: 700; padding-top: 10px; line-height: 1.2; width: 100%; letter-spacing: 0.05em;}
.koblog-case .koblog-card .case-company span{font-weight: 400; margin-right: 1em;}
p.case_description{font-size: 1.8rem; display: flex; justify-content: center; margin-bottom: 0; font-weight: 500; line-height: 1.3;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.koblog-case {width: 100%; max-width: 100%; margin: 0 auto; padding: 25px 0; }
	.koblog-case .koblog-card-wrap { margin: auto; margin-top: 0; max-width: calc(100% - 20px);}
	.koblog-case .koblog-card {display: block; width: 100%; max-width: 100%; margin-right: 0; margin-bottom: 30px;}
	.koblog-case .koblog-card:nth-child(2n) { margin-right: 0; }
	.koblog-case .koblog-card .image {max-width: 100%; height: calc(100vw * (3 / 4));}
	.koblog-case .koblog-card .image img {}
	.koblog-case .koblog-card .koblog-card-inner { border-radius: 15px; width: 82.76%; max-width: 480px; height: 120px; margin: auto; margin-top: -60px; padding: 30px 10%;}
	.koblog-case .koblog-card .case-tit {font-size: 18px; line-height: 1.3; padding-bottom: 7px; text-align: center;}
	.koblog-case .koblog-card .case-tit span{margin-right: 0;}
	.koblog-case .koblog-card .case-company {font-size: 14px; line-height: 1.3; padding-top: 7px; text-align: center;}
.koblog-case .koblog-card .case-company span{margin-right: 0;}
	p.case_description{padding: 0 10px;}
}
@media screen and (max-width: 844px) and (orientation:landscape) {
	.koblog-case .koblog-card {display: block; width: 48.4%; max-width: 580px; margin-right: 3.2%; margin-bottom: 30px;}
	.koblog-case .koblog-card:nth-child(2n) { margin-right: 0; }
	.koblog-case .koblog-card .image {max-width: 100%; height: calc(50vw * (3 / 4));}
	.koblog-case .koblog-card .koblog-card-inner { height: 100px; margin: auto; margin-top: -50px; padding: 20px 5%;}
}

/* ---------------------------------------------------
	子ブログindex - 検索結果用
------------------------------------------------------ */
.koblog-search {width: 100%; max-width: 1200px; margin: 0 auto; padding: 50px 0; }
.koblog-search .koblog-card-wrap { display: block; margin-top: 30px; }
.koblog-search .koblog-card { width: 100%; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 20px 0; border-bottom: 1px dotted #0099B2;}
.koblog-search .koblog-card:hover {text-decoration: none;}
.koblog-search .koblog-card .koblog-card-inner { display: flex; justify-content: flex-start; align-items: center; width: 100%; }
.koblog-search .koblog-card .meta { display: block; min-width: 25%; margin-right: 20px;}
.koblog-search .koblog-card .category { -webkit-box-flex: 0; -ms-flex: none; flex: none; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; height: auto; min-width: 100px; padding: 0 10px; font-size: 1.6rem; color: #fff; background: #0099B2;}
_:-ms-fullscreen, :root .koblog-search .koblog-card .category { padding-top: 4px; }
.koblog-search .koblog-card .text {}
.koblog-search .koblog-card:hover .text {text-decoration: underline;}

@media screen and (max-width: 1280px) {
	.koblog-search .koblog-card-wrap {max-width: calc(100% - 20px); margin-left: auto; margin-right: auto;}
}
@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.koblog-search {width: 100%; max-width: 100%; margin: 0 auto; padding: 0 10px; }
	.koblog-search .koblog-card-wrap { margin-top: 10px; }
	.koblog-search .koblog-card {}
	.koblog-search .koblog-card .koblog-card-inner { display: block; }
	.koblog-search .koblog-card .meta {width: 100%; margin-right: 0;}
	.koblog-search .koblog-card .category {display: inline-block; width: auto; min-width: 0; height: auto;}
	.koblog-search .koblog-card .text { margin-top: 10px; font-size: 18px;}
}

/* ---------------------------------------------------
	子ブログ詳細
------------------------------------------------------ */
.entry .entry-info {display: -ms-flexbox; display: flex; -ms-flex-pack: start; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-align: center; align-items: center; margin-bottom: 40px;}
.entry .entry-info .date { -webkit-box-flex: 0; -ms-flex: none; flex: none; margin-right: 10px; font-size: 18px; line-height: 1; }
.entry .entry-info .category {-webkit-box-flex: 0; -ms-flex: none; flex: none; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; height: 24px; min-width: 100px; padding: 0 10px; font-size: 14px; color: #fff; background: #00469C; }

.entry > .entry-footer {max-width: 1200px; margin: 60px auto 20px;}

.share-wrapper .share-list {align-items: center;}
.share-wrapper .share-item > a {display: block; width: 22px; height: 22px;}
.share-wrapper .share-item .share-item-x::before {background-image: url(../images/common/icon-x.svg); content: ""; display: inline-block; background-repeat: no-repeat; background-size: 100%; width: 22px; height: 22px;}


@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.entry .entry-info {margin-bottom: 20px; padding: 0 10px;}
	.entry .entry-info .date { margin-right: 10px; margin-bottom: 10px; font-size: 16px; line-height: 1; width: 100%;}
	.entry .entry-info .category {}
	.entry > .entry-footer {max-width: 1200px; margin: 30px auto 10px;}
	
	.share-wrapper .share-item .share-item-x::before {width: 22px; height: 22px;}
}

/* ---------------------------------------------------
	tag
------------------------------------------------------ */
.taglist {width: 100%; max-width: 1200px; margin: 40px auto; padding: 0; }
.taglist .tag {display: -ms-flexbox; display: flex; -ms-flex-pack: start; justify-content: flex-start; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap;}
.taglist .tag a {display: inline-block; padding: 5px 10px; border: 1px solid #999;}
.taglist .tag a:hover {display: inline-block; padding: 5px 10px; border: 1px solid #999; background: #999; color: #FFF;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.taglist {width: 100%; max-width: 100%; margin: 20px auto; padding: 0 10px; }
	.taglist .tag {}
	.taglist .tag a {}
	.taglist .tag a:hover {}
}

/* ---------------------------------------------------
	404
------------------------------------------------------ */
#article-404 {}
#article-404.entry-title {text-align: center; margin: 50px 0;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
}

/* ---------------------------------------------------
	お問い合わせ
------------------------------------------------------ */
.acms-grid > .contact-box {width: 100%; max-width: 1000px; margin: 0 auto;}
.contact-box section + section {margin-top: 100px;}
.contact-box .tel-box {width: 680px; margin: 0 auto 40px; padding: 30px 0; border: 1px solid #222; text-align: center;}
.contact-box .tel-box h2 {margin-bottom: 0;}
.entry-column .contact-box ul li {background: none; padding: 0; text-indent: 0;}
.contact-box .contact-no { font-size: 40px;}
.contact-box .contact-no + p {margin-bottom: 0;}
.contact-box .fax {}
.contact-box .contact-no span,
.contact-box .contact-no span a {}

.contact-form, .contact-form-group {background: none;}
.contact-form-group {display: flex; justify-content: flex-start; align-items: stretch;}
.contact-form-label {width: calc(100% / 3); padding: 40px 0; padding-right: 39px;
	background-image : linear-gradient(to right, #BBB, #BBB 1px, transparent 1px, transparent 4px);
  background-size: 4px 1px;
  background-position: left bottom;
  background-repeat: repeat-x;
}
.contact-form-control {background-image : linear-gradient(to right, #BBB, #BBB 1px, transparent 1px, transparent 4px);  /* 幅2の線を作る */
  background-size: 4px 1px;/* グラデーションの幅・高さを指定 */
  background-position: left bottom;  /* 背景の開始位置を指定 */
  background-repeat: repeat-x;  width: calc((100% / 3 ) * 2); padding: 30px 0;}
.contact-box input[type=date], .contact-box input[type=datetime-local], .contact-box input[type=datetime], .contact-box input[type=email], .contact-box input[type=month], .contact-box input[type=number], .contact-box input[type=password], .contact-box input[type=search], .contact-box input[type=tel], .contact-box input[type=text], .contact-box input[type=time], .contact-box input[type=url], .contact-box input[type=week] {padding: 5px;}
.contact-box input{height: 50px;}
.contact-box select {min-height: 40px;}
.contact-box .acms-admin-form-radio {display: block; margin-bottom: 10px;}
.contact-box .radio-sub {display: inline-block; padding-left: 25px; margin-bottom: 10px;}
.form-btn-box {margin: 20px 10px; margin-top: 60px;}
.contact-box .btn-attention-block-large { position: relative; display: block; width: 100%; padding: 10px 40px; border: 2px solid #0099B2; color: #0099B2; font-weight: 700; text-align: center; text-decoration: none; background: #FFF; transition: all .25s ease; border-radius: 100px; margin: auto;}
.contact-box .btn-attention-block-large:hover {color: #FFF; background: #0099B2;}
.contact-box .btn-attention-block-large:active, .contact-box .btn-attention-block-large:focus {opacity: 0.8;}
.contact-box .btn-large { padding: 10px 20px; margin: auto 10px; background: #0099B2; border: 2px solid #0099B2; color: #FFF; border-radius: 100px; font-weight: 500;}
input, select { font-family: "Noto Sans JP","游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif; font-weight: 500;}

.contact-box .message-back-link a {color: #222;}

.entry-column .contact-box p.description{font-size: 17px; font-weight: 500; line-height: 2.12; padding-bottom: 60px; margin-bottom: 80px; border-bottom: 2px solid #0099B2;}

.label-any {margin: 0 10px; padding: 2px 8px;color: #fff; background: #666; border-radius: 3px; font-size: 12px; float: right;}
.label-required {float: right;}

.contact-box .acms-admin-form-checkbox{width:100%; margin: 0; margin-bottom: 15px;}
.contact-box .acms-admin-form-checkbox:last-of-type{margin-bottom: none;}
.contact-box .acms-admin-form-checkbox label a{color: #0099B2;}

.contact-form-label{position: relative;}
.valid-mark.valid{position: absolute; right: 10px; top: 35px;}


.contact-box .flexbox{flex-wrap:wrap;}
.contact-box .flexbox p.btn-link{margin-left: 0;}
.contact-box .flexbox p.btn-link:first-of-type{margin-right:30px;}


@media screen and (max-width: 1024px) {
	.acms-grid > .contact-box {max-width: 960px;}
}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
.contact-box section + section {margin-top: 50px;}
.contact-box .tel-box {width: 94%;}
.contact-box .contact-no { font-size: 28px;}
.contact-box .fax { font-size: 20px;}
.entry-column .contact-box ul li{display: block;}
.contact-form-label{width:100%; padding: 10px;}
.contact-form-control{width:100%; padding: 10px;}
.valid-mark.valid{top: 5px; right: 65px;}
.contact-box .flexbox p.btn-link:first-of-type{margin-right: 0;}
}

/*=======================================
フッター
=========================================*/
.l-footer { margin-top: 160px; padding-top: 84px; padding-bottom: 36px; position: relative; }
.l-footer:before { display: block; content: ""; border-top: 1px solid #BBB; position: absolute; width: calc(100% - 200px); top: 0; left: 0; right: 0; margin-left: auto; margin-right: auto; }
.l-footer__block { display: flex; justify-content: space-between; align-items: center; padding-left: 120px; }
.l-footer__block:before, .l-footer__block:after { display: none; }
.l-footer__block .info .logo {margin-bottom: 20px;}
.l-footer__block .info .logo a:hover,
.l-footer__block .info .logo a:hover img { opacity: 1; }
.l-footer__block .info p { font-size: 17px; font-size: 1.7rem; font-weight: 500; line-height: 180%; }
.l-footer__block .info .privacy { margin-top: 45px; font-weight: 500; }
.l-footer__block .info .privacy a { display: inline-block; *display: inline; *zoom: 1; background: url(../images/common/arrow-1-gray.svg) no-repeat left center; background-size: 16px 16px; padding-left: 20px; text-decoration: underline; }
.l-footer__block .info .privacy a:hover { text-decoration: none; }
.l-footer__block .nav ul { display: flex; }
.l-footer__block .nav ul:before, .l-footer__block .nav ul:after { display: none; }
.l-footer__block .nav li { margin-left: 40px; width: 360px; }
.l-footer__block .nav li:first-child { margin-left: 0; }
.l-footer__block .nav li a { display: flex; flex-direction: column; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; height: 100%; padding: 50px 30px 40px; text-decoration: none; background: #ECF1F2; border-radius: 40px; color: #0099B2; }
.l-footer__block .nav li a:hover { opacity: 0.8; }
.l-footer__block .nav li a:hover img { opacity: 1; }
.l-footer__block .nav li .icon { text-align: center; display: block; margin-bottom: 25px; }
.l-footer__block .nav li h2 { text-align: center; font-size: 24px; font-size: 2.4rem; font-weight: 500; line-height: 120%; letter-spacing: 0.1em; margin-bottom: 30px; }
.l-footer__block .nav li p { font-size: 17px; font-size: 1.7rem; font-weight: 500; line-height: 160%; }
.l-footer__block .nav li.magazine a { color: #fff; background: #0099B2; }
.l-footer__copyright { text-align: center; padding-top: 40px; font-size: 14px; font-size: 1.4rem; line-height: 140%; font-weight: 500; }

/*=======================================
ページトップへ
=========================================*/
.l-pagetop { position: fixed; right: 10px; bottom: 10px; z-index: 999; }


@media screen and (max-width:1366px){
  .l-footer__block{padding-left: 1.5rem;}
  .l-footer__block .nav li { margin-left: 2rem; width: 36rem; }
  .l-footer__block .nav li a { height: 100%; padding: 5rem 3rem 4rem; border-radius: 4rem;}
  .l-footer__block .nav li .icon {margin-bottom: 2.5rem;}
  .l-footer__block .nav li h2 {font-size: 2.4rem; margin-bottom: 3rem; }
  .l-footer__block .nav li p {font-size: 1.7rem;}
  .l-footer:before{width: calc(100% - 1.5rem);}
}

/* ----------------------------- スマホ（～767px） */
@media screen and (max-width: 767px) {
  .l-footer { margin-top: 60px; padding-top: 40px; padding-bottom: 80px; }
  .l-footer:before { width: calc(100% - 30px); }
  .l-footer__block { padding-left: 0; flex-direction: column; }
  .l-footer__block .info { margin-bottom: 25px; text-align: center; }
  .l-footer__block .info .logo { margin-bottom: 15px; }
  .l-footer__block .info p { font-size: 14px; font-size: 1.4rem; }
  .l-footer__block .nav li { width: 49%; margin-left: 2%; }
  .l-footer__block .nav li:nth-child(2n+1) { margin-left: 0; }
  .l-footer__block .nav li a { border-radius: 10px; padding: 20px 10px; }
  .l-footer__block .nav li .icon { margin-bottom: 10px; }
  .l-footer__block .nav li .icon img { width: 45px; }
  .l-footer__block .nav li h2 { font-size: 18px; font-size: 1.8rem; margin-bottom: 12px; }
  .l-footer__block .nav li p { font-size: 12px; font-size: 1.2rem; }
  .l-footer__block .privacy { margin-top: 20px; text-align: center; font-weight: 500; }
  .l-footer__block .privacy a { display: inline-block; *display: inline; *zoom: 1; background: url(../images/common/arrow-1-gray.svg) no-repeat left center; background-size: 16px 16px; padding-left: 20px; text-decoration: underline; }
  .l-footer__block .privacy a:hover { text-decoration: none; }
  .l-footer__copyright { padding-top: 30px; font-size: 11px; font-size: 1.1rem; }
  .l-footer__copyright > p{line-height: 140%;}
}

@media screen and (max-width: 844px) and (orientation:landscape) {
  .l-footer__block{padding-left: 0; flex-wrap: wrap;}
  .l-footer__block .info{width:100%; text-align: center; margin-bottom: 1rem;}
  .l-footer__block .nav,
  .l-footer__block .nav ul{width: 100%;}
  .l-footer__block .nav li{width: 50%;}
}


/* reCAPTCHA */
.grecaptcha-badge {bottom: 80px !important;}


/* ---------------------------------------------------
	print
------------------------------------------------------ */
@page {size: A4; margin: 5mm;}
@media print {
	body {width: 1000px;font-size: 16px;}
}



/* ----------------------------- 3. 下層ページ */
/*=======================================
下層ページ
=========================================*/
/* ----------------------------- 4. 投稿 */
/*=======================================
サイドバー
=========================================*/
/* ----------------------------- 9. 共通パーツ */
.u-mt0 { margin-top: 0px; }

.u-mt5 { margin-top: 5px; }

.u-mt10 { margin-top: 10px; }

.u-mt15 { margin-top: 15px; }

.u-mt20 { margin-top: 20px; }

.u-mt30 { margin-top: 30px; }

.u-mt40 { margin-top: 40px; }

.u-mt50 { margin-top: 50px; }

.u-mt60 { margin-top: 60px; }

.u-mt70 { margin-top: 70px; }

.u-mt80 { margin-top: 80px; }

.u-mt90 { margin-top: 90px; }

.u-mb0 { margin-bottom: 0; }

.u-mb5 { margin-bottom: 5px; }

.u-mb10 { margin-bottom: 10px; }

.u-mb15 { margin-bottom: 15px; }

.u-mb20 { margin-bottom: 20px; }

.u-mb30 { margin-bottom: 30px; }

.u-mb40 { margin-bottom: 40px; }

.u-mb50 { margin-bottom: 50px; }

.u-mb60 { margin-bottom: 60px; }

.u-mb70 { margin-bottom: 70px; }

.u-mb80 { margin-bottom: 80px; }

.u-mb90 { margin-bottom: 90px; }

.u-pb0 { padding-bottom: 0px; }

.u-col { color: #222222; }
.u-col__red { color: #F00; }

.u-mincho { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

.u-gothic { font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

.u-italic { font-style: italic; }

.u-center { text-align: center !important; }
.u-center th, .u-center td { text-align: center !important; }

.u-right { text-align: right !important; }
.u-right th, .u-right td { text-align: right !important; }

.u-left { text-align: left !important; }
.u-left th, .u-left td { text-align: left !important; }

.c-wrap { max-width: 1200px; margin-left: auto; margin-right: auto; padding-left: 1.5rem; padding-right: 1.5rem; box-sizing: content-box;}
.c-wrap-1440 { max-width: 1440px; margin-left: auto; margin-right: auto; padding-left: 1.5rem; padding-right: 1.5rem;  box-sizing: content-box;}
.c-wrap-1520 { max-width: 1520px; margin-left: auto; margin-right: auto; padding-left: 1.5rem; padding-right: 1.5rem; box-sizing: content-box;}

.c-btn1 { text-align: center; margin-top: 60px; }
.c-btn1 a { display: inline-block; *display: inline; *zoom: 1; border: 2px solid #0099B2; border-radius: 30px; font-weight: 500; color: #0099B2; padding: 10px 40px 12px; }
.c-btn1 a:hover { background: #0099B2; color: #fff; }
.c-btn1 a:hover span { background-image: url(../images/common/arrow-1-white.svg); }
.c-btn1 span { display: inline-block; *display: inline; *zoom: 1; background: url(../images/common/arrow-1.svg) no-repeat left center; background-size: 16px 16px; padding-left: 26px; }

.c-title1 { text-align: center; margin-bottom: 40px; }
.c-title1 .en { display: block; font-size: 140px; font-size: 14rem; line-height: 85%; color: rgba(231, 231, 231, 0.5); }
.c-title1 .h { color: #0099B2; font-weight: bold; font-size: 36px; font-size: 3.6rem; line-height: 120%; letter-spacing: 0.05em; }

.c-table__nostyle { width: 100%; }
.c-table__nostyle th, .c-table__nostyle td { padding: 2px 0 !important; border: 0; font-weight: normal; text-align: left; vertical-align: top; background: transparent; }

.u-indent { text-indent: -1em; padding-left: 1em; }

.c-news li {display: block;}
.c-news li a { display: flex; padding-top: 20px; padding-bottom: 20px; border-bottom: 1px dotted #aaa; font-size: 17px; font-size: 1.7rem; width: 100%; box-sizing: border-box; text-decoration: none; font-weight: 500; line-height: 160%;}
.c-news li a .date { font-weight: 400; width: 120px;}
.c-news li a .h { max-width: calc(100% - 120px);}
.c-news li a:hover .h { color: #0099B2; text-decoration: underline; }

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) { .c-btn1 { margin-top: 30px; }
  .c-title1 { margin-bottom: 25px; }
  .c-title1 .en { font-size: 100px; font-size: 10rem; }
  .c-title1 .h { font-size: 24px; font-size: 2.4rem; }
  .c-table__nostyle { width: 100%; }
  .c-table__nostyle th, .c-table__nostyle td { padding: 2px 0 !important; border: 0; font-weight: normal; text-align: left; vertical-align: top; background: transparent; }
  .u-indent { text-indent: -1em; padding-left: 1em; }
  .c-news li a { padding-top: 12px; padding-bottom: 12px; font-size: 14px; font-size: 1.4rem; flex-direction: column; }
  .c-news li a .date { width: auto; }
  .c-news li a .h { max-width: initial; } }
@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) { /* ----------------------------- 全体 */
  html { font-size: 62.5%; }
  body { font-size: 14px; font-size: 14px; font-size: 1.4rem; line-height: 2em; position: relative; -webkit-text-size-adjust: 100%; }
  #container { padding-top: 6rem; } }
