@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
				margin: 0;
				padding: 0;
				border: 0;
				font-size: 100%;
				font: inherit;
				vertical-align: baseline;
				-webkit-box-sizing: border-box;
				        box-sizing: border-box;
}

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

body {
				line-height: 1;
}

ol, ul {
				list-style: none;
}

blockquote, q {
				quotes: none;
}

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

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

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

input[type=text], input[type=submit], textarea, button {
				-webkit-box-sizing: border-box;
				        box-sizing: border-box;
				-webkit-appearance: none;
				   -moz-appearance: none;
				        appearance: none;
				max-width: 100%;
}

:focus {
				outline: none;
}

@media only screen and (min-width: 1200px) {
				.u-hdn--l {
								display: none !important;
				}
}

@media only screen and (max-width: 1199px) {
				.u-hdn--m {
								display: none !important;
				}
}
@media only screen and (max-width: 767px) {
				.u-hdn--m {
								display: block !important;
				}
}

@media only screen and (max-width: 767px) {
				.u-hdn--s {
								display: none !important;
				}
}

.u-pe--none {
				pointer-events: none;
}

html {
				font-size: 1rem;
}
@media only screen and (min-width: 1200px) {
				html {
								scroll-padding-top: 80px;
				}
}
@media only screen and (max-width: 1199px) {
				html {
								scroll-padding-top: 70px;
				}
}
@media only screen and (max-width: 767px) {
				html {
								scroll-padding-top: 60px;
				}
}

body {
				font-family: "Barlow", "Noto Sans JP", sans-serif;
				color: #222;
				line-height: 1.6;
				font-size: 1rem;
				letter-spacing: 0.1em;
				background: white;
				overflow-wrap: break-word;
				word-wrap: break-word;
				word-break: break-word;
				overflow-x: hidden;
}
@media only screen and (max-width: 1199px) {
				body {
								-webkit-text-size-adjust: 100%;
								   -moz-text-size-adjust: 100%;
								    -ms-text-size-adjust: 100%;
								        text-size-adjust: 100%;
				}
}

img {
				max-width: 100%;
				vertical-align: bottom;
				height: auto;
}
@media only screen and (max-width: 767px) {
				img {
								width: 100%;
				}
}

a {
				-webkit-transition: 0.3s;
				transition: 0.3s;
				color: #46a078;
				text-decoration: none;
				cursor: pointer;
}
a:hover {
				color: #8accaf;
				text-decoration: underline;
}
a img {
				-webkit-transition: 0.3s;
				transition: 0.3s;
}
a img:hover {
				opacity: 0.9;
}

mark {
				background: none !important;
}

input[type=text],
input[type=email],
input[type=tel],
textarea {
				padding: 0.7em;
				line-height: 1.6;
				font-size: 1rem;
				outline: none;
				border: 1px solid #ddd;
}
input[type=text]::-webkit-input-placeholder, input[type=email]::-webkit-input-placeholder, input[type=tel]::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
				color: #999;
}
input[type=text]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=tel]::-moz-placeholder, textarea::-moz-placeholder {
				color: #999;
}
input[type=text]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder, textarea:-ms-input-placeholder {
				color: #999;
}
input[type=text]::-ms-input-placeholder, input[type=email]::-ms-input-placeholder, input[type=tel]::-ms-input-placeholder, textarea::-ms-input-placeholder {
				color: #999;
}
input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=tel]::placeholder,
textarea::placeholder {
				color: #999;
}

input[type=file] {
				border: 1px solid #eee;
				background: white;
				padding: 0.9em;
				margin-top: 0.5em;
				-webkit-box-sizing: border-box;
				        box-sizing: border-box;
				width: 100%;
}

h1, h2, h3, h4 {
				font-weight: bold;
}

dl dt {
				font-weight: bold;
}

iframe {
				width: 100%;
}
iframe[src*="youtube.com"] {
				aspect-ratio: 16/9;
				height: auto;
}

.l-header {
				z-index: 3;
}

.l-container {
				z-index: 2;
}

.l-footer {
				z-index: 1;
}

/*
.p-pagetop{
	z-index: map-get($z, pagetop);
}
*/
/*
.p-float{
	z-index: map-get($z, float);
}
*/
.p-drawer {
				z-index: 5;
}

.toggle {
				display: none;
}

.acc-label {
				padding: 1em 0;
				display: block;
				color: #46a078;
				border-bottom: 1px solid #eee;
}

.acc-label::before {
				content: "";
				width: 6px;
				height: 6px;
				border-top: 2px solid #46a078;
				border-right: 2px solid #46a078;
				position: absolute;
				top: calc(50% - 3px);
				right: 0;
				-webkit-transform: rotate(135deg);
				        transform: rotate(135deg);
}

.acc-label,
.acc-content {
				-webkit-backface-visibility: hidden;
				        backface-visibility: hidden;
				-webkit-transform: translateZ(0);
				        transform: translateZ(0);
				-webkit-transition: all 0.3s;
				transition: all 0.3s;
}

.acc-content {
				height: 0;
				margin-bottom: 1em;
				padding: 0 1em;
				overflow: hidden;
}

.toggle:checked + .acc-label + .acc-content {
				height: auto;
				padding: 0 1em 1em 1em;
				-webkit-transition: all 0.3s;
				transition: all 0.3s;
}

.toggle:checked + .acc-label::before {
				-webkit-transform: rotate(-45deg) !important;
				        transform: rotate(-45deg) !important;
}

.bogo-language-switcher {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
}
.bogo-language-switcher li {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
}
.bogo-language-switcher li.current {
				display: none;
}

.bogoflags {
				display: none;
}
.bogo-language-name a {
				line-height: 1.6;
				font-size: 0.8125rem;
}
.bogo-language-name a.current {
				pointer-events: none;
				color: #222;
}

/* -------------------------- */
/* var*/
/* -------------------------- */
/* -------------------------- */
body.active {
				height: 100%;
				overflow: hidden;
}

#drawer {
				display: none;
}

/* -------------------------- */
/* title 有り */
/*
.drawer-icon__ttl {
    position: absolute;
    width: 100%;
    top: -1.5em;
    @include fs(12);
    @include fb-sb;
    letter-spacing: 0 !important;
}

#drawer:checked~#drawer-icon .drawer-icon__ttl {
    opacity: 0;
}
*/
/* -------------------------- */
#drawer-icon {
				cursor: pointer;
				display: block;
				position: fixed;
				z-index: 3;
				-webkit-transition: 0.3s;
				transition: 0.3s;
}
@media only screen and (min-width: 1200px) {
				#drawer-icon {
								display: none;
				}
}
@media only screen and (max-width: 1199px) {
				#drawer-icon {
								top: 10px;
								right: 8px;
								width: calc(26 * 2px);
								height: calc(26 * 2px);
				}
}
@media only screen and (max-width: 767px) {
				#drawer-icon {
								top: 5px;
								right: 5px;
								width: calc(24 * 2px);
								height: calc(24 * 2px);
				}
}
#drawer-icon span {
				background: #222;
				display: block;
				position: absolute;
				-webkit-transition: 0.3s;
				transition: 0.3s;
				height: 3px;
				border-radius: 3px;
}
@media only screen and (max-width: 1199px) {
				#drawer-icon span {
								width: 26px;
								top: 26px;
								left: calc(26px / 2);
				}
}
@media only screen and (max-width: 767px) {
				#drawer-icon span {
								width: 24px;
								top: 24px;
								left: calc(24px / 2);
				}
}
#drawer-icon span::before, #drawer-icon span::after {
				background: #222;
				content: "";
				display: block;
				height: 100%;
				position: absolute;
				-webkit-transform: rotate(0);
				        transform: rotate(0);
				-webkit-transition: 0.3s;
				transition: 0.3s;
				width: 100%;
}
@media only screen and (max-width: 1199px) {
				#drawer-icon span::before {
								margin-top: -8px;
				}
}
@media only screen and (max-width: 767px) {
				#drawer-icon span::before {
								margin-top: -7px;
				}
}
@media only screen and (max-width: 1199px) {
				#drawer-icon span::after {
								margin-top: 8px;
				}
}
@media only screen and (max-width: 767px) {
				#drawer-icon span::after {
								margin-top: 7px;
				}
}
#drawer-icon:hover {
				background: rgba(51, 51, 51, 0);
}
#drawer-icon:hover span {
				background: #646464;
}
#drawer-icon:hover span::before, #drawer-icon:hover span::after {
				background: #646464;
}

#drawer:checked ~ #drawer-icon {
				-webkit-box-shadow: none;
				        box-shadow: none;
}
#drawer:checked ~ #drawer-icon span {
				background: none;
}
#drawer:checked ~ #drawer-icon span::before, #drawer:checked ~ #drawer-icon span::after {
				background: #222;
				margin-top: 0;
}
#drawer:checked ~ #drawer-icon span::before {
				-webkit-transform: rotate(-45deg);
				        transform: rotate(-45deg);
}
#drawer:checked ~ #drawer-icon span::after {
				-webkit-transform: rotate(45deg);
				        transform: rotate(45deg);
}

#drawer-content {
				z-index: 2;
				position: fixed;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				overflow-y: scroll;
				-webkit-transition: 0.3s;
				transition: 0.3s;
				-webkit-overflow-scrolling: touch;
				/*
				   // スライド
				   transform: translateX(-100vw);
				*/
				visibility: hidden;
				opacity: 0;
}
@media only screen and (min-width: 1200px) {
				#drawer-content {
								display: none;
				}
}
#drawer:checked ~ #drawer-content {
				-webkit-transform: translateX(0);
				        transform: translateX(0);
				visibility: visible;
				opacity: 1;
}

#drawer-close {
				display: none;
				position: fixed;
				z-index: 1;
				top: 0;
				left: 0;
				background: #222;
				opacity: 0;
				-webkit-transition: 0.3s;
				transition: 0.3s;
				width: 100%;
				height: 100%;
}

#drawer:checked ~ #drawer-close {
				display: block;
				opacity: 0.7;
}

@media only screen and (max-width: 1199px) {
				.gtranslate_wrapper img {
								height: 24px;
				}
}
@media only screen and (max-width: 767px) {
				.gtranslate_wrapper img {
								width: auto;
				}
}
.gtranslate_wrapper a {
				color: #222;
}
.gtranslate_wrapper a:hover {
				color: #46a078;
}

/*---------------------------*/
/* 入力画面 */
/*---------------------------*/
.mw_wp_form .error {
				display: block;
				width: 100%;
}
@media only screen and (min-width: 1200px) {
				.mw_wp_form .horizontal-item {
								margin: 0 0.7em 0 0 !important;
				}
}
@media only screen and (max-width: 1199px) {
				.mw_wp_form .horizontal-item {
								margin: 0 0 0 0 !important;
				}
}

/*---------------------------*/
/* 確認画面 */
/*---------------------------*/
.mw_wp_form_confirm .p-form__edit {
				border-bottom: 1px solid #eee;
				padding-bottom: 0.5em;
}
.mw_wp_form_confirm .p-form__attn {
				display: none;
}
.mw_wp_form_confirm .p-form__emailconfirm {
				display: none;
}
.mw_wp_form_confirm .p-form__btn {
				margin-top: 1.5em;
}

.wp-pagenavi {
				display: block;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: center;
				    -ms-flex-pack: center;
				        justify-content: center;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
}
@media only screen and (min-width: 1200px) {
				.wp-pagenavi {
								margin-top: 3em;
				}
}
@media only screen and (max-width: 1199px) {
				.wp-pagenavi {
								margin-top: 4%;
				}
}
@media only screen and (max-width: 767px) {
				.wp-pagenavi {
								margin-top: 7%;
				}
}

.wp-pagenavi a, .wp-pagenavi span {
				border: none !important;
				margin: 0 0.5em;
}

.wp-pagenavi a {
				color: black;
}
.wp-pagenavi a:hover {
				color: #8accaf;
}

.wp-pagenavi .current {
				background: #46a078;
				color: white;
				padding: 0.5em 1em;
}

@media only screen and (min-width: 1200px) {
				.l-container {
								margin-top: 80px;
				}
}
@media only screen and (max-width: 1199px) {
				.l-container {
								margin-top: 70px;
				}
}
@media only screen and (max-width: 767px) {
				.l-container {
								margin-top: 60px;
				}
}

.l-article {
				max-width: 100vw;
}

.l-footer {
				clear: both;
}

@media only screen and (min-width: 1200px) {
				.c-anchor {
								margin-top: -80px;
								padding-top: 80px;
				}
}
@media only screen and (max-width: 1199px) {
				.c-anchor {
								margin-top: -70px;
								padding-top: 70px;
				}
}
@media only screen and (max-width: 767px) {
				.c-anchor {
								margin-top: -60px;
								padding-top: 60px;
				}
}

.c-bg {
				background-attachment: fixed;
				background-size: cover;
				background-repeat: no-repeat;
				background-position: 50%;
}
.c-bg--prm {
				background: rgb(171, 215, 228);
				background: linear-gradient(196deg, rgb(171, 215, 228) 0%, rgb(255, 255, 255) 47%, rgb(129, 194, 192) 100%);
}
.c-btn {
				text-align: center;
}
@media only screen and (min-width: 1200px) {
				.c-btn {
								margin-top: 1.5em;
				}
}
@media only screen and (max-width: 1199px) {
				.c-btn {
								margin-top: 4%;
				}
}
@media only screen and (max-width: 767px) {
				.c-btn {
								margin-top: 5%;
				}
}

.c-btn__link, .c-btn__link--back {
				color: white;
				-webkit-transition: 0.3s;
				transition: 0.3s;
				text-align: center;
				height: 100%;
				border-radius: 5px;
				letter-spacing: 0.1em;
				border: none;
				background: #46a078;
				line-height: 1.6;
				font-size: 1rem;
				display: inline-block;
				cursor: pointer;
}
@media only screen and (min-width: 1200px) {
				.c-btn__link, .c-btn__link--back {
								padding: 1.2em 4em;
				}
}
@media only screen and (max-width: 1199px) {
				.c-btn__link, .c-btn__link--back {
								padding: 0.7em 2em;
				}
}
@media only screen and (max-width: 767px) {
				.c-btn__link, .c-btn__link--back {
								display: block;
								padding: 1em 2em;
								width: 100%;
				}
}
.c-btn__link:hover, .c-btn__link--back:hover {
				text-decoration: none;
				color: white;
				background: #50b286;
}
.c-btn__link--back {
				background: #eee;
				color: #222;
}
@media only screen and (min-width: 1200px) {
				.c-btn__link--back {
								margin-right: 1em;
				}
}
@media only screen and (max-width: 1199px) {
				.c-btn__link--back {
								margin-right: 1em;
				}
}
@media only screen and (max-width: 767px) {
				.c-btn__link--back {
								margin-right: 0;
								margin-bottom: 5%;
				}
}
.c-btn__link--back:hover {
				background: #ddd;
}

.c-bubble {
				position: fixed;
				z-index: -1;
}
@media only screen and (min-width: 1200px) {
				.c-bubble__1 {
								top: 60%;
								left: -15%;
				}
}
@media only screen and (max-width: 1199px) {
				.c-bubble__1 {
								top: 60%;
								left: -15%;
				}
}
@media only screen and (max-width: 767px) {
				.c-bubble__1 {
								width: 60vw;
				}
}
@media only screen and (min-width: 1200px) {
				.c-bubble__2 {
								top: 10%;
								right: -5%;
				}
}
@media only screen and (max-width: 1199px) {
				.c-bubble__2 {
								top: 10%;
								right: -5%;
				}
}
@media only screen and (max-width: 767px) {
				.c-bubble__2 {
								width: 70vw;
				}
}

.c-circle {
				border-radius: 100px;
				line-height: 0;
				background: #46a078;
				color: white;
				margin-right: 0.5em;
				text-align: center;
				letter-spacing: 0;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: center;
				    -ms-flex-pack: center;
				        justify-content: center;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
				line-height: 1.6;
				font-size: 1.25rem;
				line-height: 0;
}
@media only screen and (min-width: 1200px) {
				.c-circle {
								width: 30px;
								height: 30px;
				}
}
@media only screen and (max-width: 1199px) {
				.c-circle {
								width: 1em;
								height: 1em;
				}
}

.c-eyecatch img {
				-o-object-fit: cover;
				   object-fit: cover;
				max-width: 100%;
				width: 100%;
}
@media only screen and (min-width: 1200px) {
				.c-eyecatch img {
								height: 350px;
				}
}
@media only screen and (max-width: 1199px) {
				.c-eyecatch img {
								height: 50vw;
				}
}
@media only screen and (max-width: 767px) {
				.c-eyecatch img {
								height: 70vw;
				}
}

.c-input, .c-input--textarea {
				width: 100%;
				border-radius: 0;
				-webkit-box-sizing: border-box;
				        box-sizing: border-box;
				padding: 0.5em 1em;
				line-height: 1.6;
				font-size: 1rem;
}

@media only screen and (min-width: 1200px) {
				.c-input--textarea {
								height: 200px;
				}
}
@media only screen and (max-width: 1199px) {
				.c-input--textarea {
								height: 10em;
				}
}

.c-link {
				-webkit-transition: 0.3s;
				transition: 0.3s;
				color: #46a078;
				font-weight: 500;
}
.c-link:hover {
				color: #317054;
}

.c-link--arrw {
				line-height: 1.6;
				font-size: 1.125rem;
}
.c-link--arrw::after {
				content: url(../img/common/icon-arrw.svg);
				vertical-align: middle;
				margin-left: 0.5em;
}

.c-overlay {
				background: rgba(0, 0, 0, 0.5);
				height: auto;
}
.c-tbl {
				border-collapse: collapse;
				border-top: 1px solid #eee;
				border-left: 1px solid #eee;
				width: 100%;
}
.c-tbl tr th,
.c-tbl tr td {
				border-right: 1px solid #eee;
				border-bottom: 1px solid #eee;
				padding: 1em;
}
.c-tbl tr th {
				background: #f9f9f9;
}
@media only screen and (min-width: 1200px) {
				.c-tel {
								pointer-events: none;
								text-decoration: none;
								color: #222;
				}
}
.c-thumbLink {
				background-position: 50%;
				background-size: 100%;
				background-repeat: no-repeat;
				display: block;
				position: relative;
				width: 100%;
				height: auto;
}
@media only screen and (min-width: 1200px) {
				.c-thumbLink {
								height: 100%;
				}
}
.c-thumbLink:before {
				content: "";
				display: block;
				padding-top: 100%;
}
.c-thumbLink > * {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
}

.c-ttl--l {
				line-height: 1.6;
				font-size: 2.8125rem;
				text-shadow: 0 0 8px #ccc;
				color: white;
}

.c-ttl--m {
				line-height: 1.6;
				font-size: 1.25rem;
}

/*
.c-ttl--s{
	@extend .c-ttl;
}
*/
.c-ttl--business {
				text-shadow: none;
				color: #222;
				line-height: 1.6;
				font-size: 2.1875rem;
				line-height: 1.2;
}
@media only screen and (max-width: 767px) {
				.c-ttl--business {
								font-size: 1.6rem;
				}
}
.c-ttl--business span {
				display: block;
				line-height: 1.6;
				font-size: 1.5625rem;
				line-height: 1.2;
				color: #46a078;
}
@media only screen and (max-width: 767px) {
				.c-ttl--business span {
								font-size: 1.2rem;
				}
}

.c-txt--attn {
				color: red;
}

.c-video {
				width: 100%;
				padding-bottom: 56.25%;
				height: 0px;
				position: relative;
}
.c-video iframe {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
}

.p-inner, .p-inner--s {
				margin: auto;
}
@media only screen and (min-width: 1200px) {
				.p-inner, .p-inner--s {
								width: 1200px;
								padding: 0 2%;
				}
}
@media only screen and (max-width: 1199px) {
				.p-inner, .p-inner--s {
								padding-left: 3%;
								padding-right: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.p-inner, .p-inner--s {
								padding-left: 4%;
								padding-right: 4%;
				}
}

@media only screen and (min-width: 1200px) {
				.p-inner--s {
								padding-left: 10%;
								padding-right: 10%;
				}
}

@media only screen and (min-width: 1200px) {
				.p-section, .p-section--bg {
								margin-top: 6em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-section, .p-section--bg {
								margin-top: 4em;
				}
}
@media only screen and (max-width: 767px) {
				.p-section, .p-section--bg {
								margin-top: 10%;
				}
}
@media only screen and (min-width: 1200px) {
				.p-section:first-of-type, .p-section--bg:first-of-type {
								margin-top: 3.5em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-section:first-of-type, .p-section--bg:first-of-type {
								margin-top: 2.8em;
				}
}
@media only screen and (max-width: 767px) {
				.p-section:first-of-type, .p-section--bg:first-of-type {
								margin-top: 7%;
				}
}
.p-section h2, .p-section--bg h2, .p-section h3, .p-section--bg h3, .p-section h4, .p-section--bg h4 {
				line-height: 1.5;
}
.p-section img, .p-section--bg img {
				-o-object-fit: cover;
				   object-fit: cover;
				max-width: 100%;
}

@media only screen and (min-width: 1200px) {
				.p-section__blk {
								margin-top: 2em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-section__blk {
								margin-top: 1.5em;
				}
}
@media only screen and (max-width: 767px) {
				.p-section__blk {
								margin-top: 5%;
				}
}

.p-wysiwyg {
				margin-top: 1em;
}
@media only screen and (max-width: 767px) {
				.p-wysiwyg {
								margin-top: 5%;
				}
}
.p-wysiwyg h3, .p-wysiwyg h4, .p-wysiwyg h5, .p-wysiwyg p, .p-wysiwyg img {
				margin-top: 1em;
}
.p-wysiwyg img {
				margin-bottom: 1em;
}

.p-breadcrumb {
				padding: 0.6em 0;
}
.p-breadcrumb i {
				margin: 0 0.5em 0 0;
}
.p-breadcrumb span {
				line-height: 1.6;
				font-size: 0.875rem;
				line-height: 1;
				margin-right: 0.5em;
}
@media only screen and (max-width: 767px) {
				.p-breadcrumb span {
								font-size: 0.875rem;
				}
}
.p-breadcrumb span i {
				margin: 0;
}
.p-breadcrumb span span {
				margin: 0;
}

.p-bread__home {
				width: 14px;
				fill: #46a078;
				margin-right: 0.5em;
}

.p-bread__arrow {
				width: 6px;
				margin-right: 0.5em;
				fill: #999;
}

.p-breadcrumb__arrow {
				line-height: 1.6;
				font-size: 0.625rem;
}

.p-count {
				margin-bottom: 1em;
				background: #f9f9f9;
				padding: 0.8em 2.2em;
				border-radius: 50px;
}
.p-count p {
				line-height: 1.6;
				font-size: 0.875rem;
}
.p-count p span {
				font-weight: bold;
				line-height: 1.6;
				font-size: 1rem;
				margin-right: 0.3em;
}

@media only screen and (max-width: 1199px) {
				.p-drawer__nav {
								margin-top: 70px;
				}
}
.p-drawer__list {
				text-align: center;
}
@media only screen and (max-width: 1199px) {
				.p-drawer__list {
								padding: 0 1.5em;
				}
}
@media only screen and (max-width: 767px) {
				.p-drawer__list {
								padding: 0 5%;
				}
}
.p-drawer__list li {
				-webkit-box-shadow: 0 0 10px #ccc;
				        box-shadow: 0 0 10px #ccc;
				border-radius: 5px;
				line-height: 1.6;
				font-size: 1.125rem;
}
@media only screen and (max-width: 1199px) {
				.p-drawer__list li {
								margin-bottom: 1em;
				}
}
.p-drawer__list li a {
				display: block;
				padding: 1em 0;
				text-decoration: none;
				font-weight: bold;
				color: #222;
				background: white;
}
.p-drawer__list li a:hover {
				color: #46a078;
}

@media only screen and (max-width: 1199px) {
				.p-drawer__sns {
								padding: 1em 4%;
				}
}
@media only screen and (max-width: 767px) {
				.p-drawer__sns {
								padding: 1em 5%;
				}
}
.p-drawer__sns li a i {
				font-size: 1.5rem;
}

.p-error__content h3 {
				line-height: 1.6;
				font-size: 1.5625rem;
}

.p-error__searchform dl {
				margin-top: 1em;
}
@media only screen and (max-width: 767px) {
				.p-error__searchform dl {
								margin-top: 5%;
				}
}
.p-error__searchform dl dt {
				font-weight: normal;
}
.p-error__searchform dl dd {
				margin-top: 0.5em;
}

.p-float {
				position: fixed;
				bottom: 0;
				left: 0;
				z-index: 1;
}
@media only screen and (min-width: 1200px) {
				.p-form__lead {
								text-align: center;
				}
}
.p-form__lead p {
				margin-top: 1em;
}

.p-form__wrap {
				background: white;
}
@media only screen and (min-width: 1200px) {
				.p-form__wrap {
								padding: 5em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-form__wrap {
								padding: 2em;
				}
}
@media only screen and (max-width: 767px) {
				.p-form__wrap {
								padding: 5%;
				}
}
.p-form__wrap dl {
				border-bottom: 1px solid #eee;
}
@media only screen and (min-width: 1200px) {
				.p-form__wrap dl {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: start;
								    -ms-flex-pack: start;
								        justify-content: flex-start;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
								padding: 1em 0;
				}
}
@media only screen and (max-width: 1199px) {
				.p-form__wrap dl {
								padding: 1em 0;
				}
}
@media only screen and (max-width: 767px) {
				.p-form__wrap dl {
								padding: 5% 0;
				}
}
.p-form__wrap dl dt {
				font-weight: normal;
}
@media only screen and (min-width: 1200px) {
				.p-form__wrap dl dt {
								width: 30%;
								padding-right: 1em;
				}
}
.p-form__wrap dl dt span {
				color: red;
				line-height: 1.6;
				font-size: 0.6875rem;
				margin-left: 0.5em;
}
.p-form__wrap dl dd {
				-webkit-box-flex: 1;
				    -ms-flex: 1;
				        flex: 1;
}
@media only screen and (min-width: 1200px) {
				.p-form__wrap dl dd {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: start;
								    -ms-flex-pack: start;
								        justify-content: flex-start;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}
@media only screen and (max-width: 1199px) {
				.p-form__wrap dl dd {
								margin-top: 0.5em;
				}
}
@media only screen and (min-width: 1200px) {
				.p-form__wrap dl dd > span {
								margin-right: 1em;
				}
}
.p-form__wrap dl dd > span label {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
}
.p-form__wrap dl dd > span label input[type=radio] {
				display: inline-block;
				width: auto;
				margin-right: 0.6em;
}
.p-form__wrap dl dd select {
				display: block;
				position: relative;
				width: 100%;
				height: 2.5em;
				border: none;
				border-radius: 0;
				overflow: hidden;
				padding: 0.5em;
				line-height: 1.6;
				font-size: 1rem;
}
.p-form__attn {
				margin-top: 1.5em;
				line-height: 1.6;
				font-size: 0.9375rem;
}
.p-form__privacy {
				position: relative;
}

.p-form__privacyCheck {
				display: inline-block;
}

.p-form__privacyTxt {
				position: absolute;
				top: 0;
				left: 1.5em;
}

.p-footer {
				background: #222;
				color: white;
}
@media only screen and (min-width: 1200px) {
				.p-footer {
								margin-top: 4em;
								padding: 3em 0;
				}
}
@media only screen and (max-width: 1199px) {
				.p-footer {
								margin-top: 3em;
								padding: 2.5em 0;
				}
}
@media only screen and (max-width: 767px) {
				.p-footer {
								margin-top: 10%;
				}
}

@media only screen and (min-width: 1200px) {
				.p-footer__inner {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
								-webkit-box-align: end;
								    -ms-flex-align: end;
								        align-items: flex-end;
				}
}
@media only screen and (min-width: 1200px) {
				.p-footer__blk {
								width: 70%;
				}
}
.p-footer__blk h4 {
				line-height: 1.6;
				font-size: 1.0625rem;
}

@media only screen and (min-width: 1200px) {
				.p-footer__info {
								margin-top: 0.5em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-footer__info {
								margin-top: 1%;
				}
}
@media only screen and (max-width: 767px) {
				.p-footer__info {
								margin-top: 4%;
				}
}
.p-footer__info dl {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				line-height: 1.6;
				font-size: 0.875rem;
}
@media only screen and (max-width: 767px) {
				.p-footer__info dl {
								font-size: 1rem;
								margin-bottom: 4%;
				}
}
.p-footer__info dl dt {
				font-weight: normal;
}
@media only screen and (max-width: 1199px) {
				.p-footer__info dl dd a {
								font-weight: bold;
				}
}
.p-footer__copy {
				line-height: 1.6;
				font-size: 0.875rem;
}
@media only screen and (min-width: 1200px) {
				.p-footer__copy {
								-webkit-box-flex: 1;
								    -ms-flex: 1;
								        flex: 1;
								text-align: right;
				}
}
@media only screen and (max-width: 1199px) {
				.p-footer__copy {
								margin-top: 2%;
				}
}
@media only screen and (max-width: 1199px) {
				.p-gnav {
								display: none;
				}
}
.p-gnav__list {
				width: 100%;
				position: relative;
				margin: 0 auto;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				*zoom: 1;
}
@media only screen and (min-width: 1200px) {
				.p-gnav__list {
								margin-right: 3em;
				}
}
.p-gnav__list li {
				position: relative;
}
.p-gnav__list li a {
				display: block;
				color: #222;
				width: auto;
				padding: 0 1em;
				text-decoration: none;
}
.p-gnav__list li a:hover {
				color: #46a078;
}

/* 下矢印 */
.p-gnav__link:after {
				content: "";
				display: inline-block;
				position: relative;
				top: -3px;
				width: 6px;
				height: 6px;
				margin: -2px 0 0 10px;
				border-right: 2px solid #46a078;
				border-bottom: 2px solid #46a078;
				-webkit-transform: rotate(45deg);
				        transform: rotate(45deg);
}

.p-gnav__list > li.current a {
				color: #46a078;
}
.p-header {
				position: fixed;
				top: 0;
				left: 0;
				width: 100%;
				background: white;
				z-index: 2;
				overflow-y: hidden;
}
@media only screen and (min-width: 1200px) {
				.p-header {
								height: 80px;
				}
}
@media only screen and (max-width: 1199px) {
				.p-header {
								height: 70px;
								-webkit-box-shadow: 0 0 10px #ccc;
								        box-shadow: 0 0 10px #ccc;
				}
}
@media only screen and (max-width: 767px) {
				.p-header {
								height: 60px;
				}
}

.p-header__inner {
				height: 100%;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
}
@media only screen and (min-width: 1200px) {
				.p-header__inner {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}
@media only screen and (max-width: 1199px) {
				.p-header__inner {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}
@media only screen and (min-width: 1200px) {
				.p-header__ttl {
								width: 230px;
				}
}
@media only screen and (max-width: 1199px) {
				.p-header__ttl {
								height: 30px;
				}
}
@media only screen and (max-width: 767px) {
				.p-header__ttl {
								height: 26px;
				}
}
.p-header__ttl a {
				display: inline-block;
				height: 100%;
				line-height: 1;
}
@media only screen and (min-width: 1200px) {
				.p-header__ttl a {
								display: block;
				}
}
.p-header__ttl a svg {
				width: 100%;
}
@media only screen and (min-width: 1200px) {
				.p-header__ttl a img {
								width: 100%;
				}
}
@media only screen and (max-width: 1199px) {
				.p-header__ttl a img {
								height: 100%;
				}
}
@media only screen and (max-width: 767px) {
				.p-header__ttl a img {
								width: auto;
				}
}

.p-header__blk {
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
}
@media only screen and (min-width: 1200px) {
				.p-header__blk {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: end;
								    -ms-flex-pack: end;
								        justify-content: flex-end;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}
@media only screen and (max-width: 1199px) {
				.p-header__blk {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
								margin-right: 3em;
				}
}
.p-hero {
				background-position: 50%;
				background-size: 100%;
				background-repeat: no-repeat;
				text-align: center;
				background-position: 50%;
				background-size: cover;
				line-height: 1.3;
}
@media only screen and (min-width: 1200px) {
				.p-hero {
								height: 100%;
				}
}
@media only screen and (max-width: 767px) {
				.p-hero {
								aspect-ratio: 3/2;
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: center;
								    -ms-flex-pack: center;
								        justify-content: center;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
								-webkit-box-align: center;
								    -ms-flex-align: center;
								        align-items: center;
				}
}
.p-hero h1 {
				line-height: 1.6;
				font-size: 3.125rem;
}
@media only screen and (min-width: 1200px) {
				.p-hero h1 {
								padding: 2em 0;
				}
}
@media only screen and (max-width: 1199px) {
				.p-hero h1 {
								padding: 2.5em 0;
				}
}
@media only screen and (max-width: 767px) {
				.p-hero h1 {
								padding: 0;
								font-size: 2.2rem;
				}
}
.p-hero h1 span {
				display: block;
				line-height: 1.6;
				font-size: 1.375rem;
				font-weight: normal;
}

@media only screen and (max-width: 767px) {
				.p-hero--s {
								aspect-ratio: 3/1;
				}
}
.p-hero--s h1 {
				line-height: 1.6;
				font-size: 2.5rem;
}
@media only screen and (min-width: 1200px) {
				.p-hero--s h1 {
								padding: 1em 0;
				}
}
@media only screen and (max-width: 1199px) {
				.p-hero--s h1 {
								padding: 1.5em 0;
				}
}
@media only screen and (max-width: 767px) {
				.p-hero--s h1 {
								font-size: 1.8rem;
				}
}
.p-hero--s h1 span {
				line-height: 1.6;
				font-size: 1.125rem;
}

.p-hero--business {
				color: white;
				background-image: url("../img/business/mv-l.jpg");
}
@media only screen and (min-width: 1200px) {
				.p-hero--business {
								text-shadow: 1px 1px 1px #999;
				}
}
@media only screen and (max-width: 767px) {
				.p-hero--business {
								background-image: url("../img/business/mv-s.jpg");
				}
}

.p-hero--member {
				color: #222;
				background-image: url("../img/member/mv-l.jpg");
}
@media only screen and (max-width: 767px) {
				.p-hero--member {
								background-image: url("../img/member/mv-s.jpg");
				}
}

.p-hero--achievement {
				color: white;
				background-image: url("../img/achievement/mv-l.jpg");
				background-position: center;
}
@media only screen and (min-width: 1200px) {
				.p-hero--achievement {
								text-shadow: 1px 1px 1px #999;
				}
}
@media only screen and (max-width: 767px) {
				.p-hero--achievement {
								background-image: url("../img/achievement/mv-s.jpg");
								background-position: 50%;
				}
}

.p-hero--company {
				color: white;
				background-image: url("../img/company/mv-l.jpg");
				background-position: center bottom;
}
@media only screen and (min-width: 1200px) {
				.p-hero--company {
								text-shadow: 1px 1px 1px #999;
				}
}
@media only screen and (max-width: 767px) {
				.p-hero--company {
								background-image: url("../img/company/mv-s.jpg");
								background-position: 50%;
				}
}

.p-map {
				line-height: 0;
}
.p-map iframe {
				width: 100%;
}
@media only screen and (min-width: 1200px) {
				.p-map iframe {
								height: 30vh;
				}
}
@media only screen and (max-width: 1199px) {
				.p-map iframe {
								height: 40vh;
				}
}
@media only screen and (max-width: 767px) {
				.p-map iframe {
								height: 50vh;
				}
}

@media only screen and (min-width: 1200px) {
				.p-news__list li {
								width: 100%;
								margin-bottom: 1.7em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-news__list li {
								margin-bottom: 3%;
				}
}
.p-news__item {
				background: white;
				border-radius: 5px;
}
.p-news__item a {
				display: block;
}
@media only screen and (min-width: 1200px) {
				.p-news__item a {
								padding: 1.8em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-news__item a {
								padding: 1.5em;
				}
}
.p-news__item a:hover {
				text-decoration: none;
}
.p-news__item a dl dt {
				font-weight: normal;
				color: #222;
}
.p-news__item a dl dt time {
				line-height: 1.6;
				font-size: 0.875rem;
}
@media only screen and (max-width: 767px) {
				.p-news__item a dl dt time {
								font-size: 1rem;
				}
}
.p-news__item a dl dd {
				line-height: 1.6;
				font-size: 0.9375rem;
}
@media only screen and (max-width: 767px) {
				.p-news__item a dl dd {
								font-size: 1rem;
				}
}

.p-news__standby {
				text-align: center;
}

.p-pagetop {
				position: fixed;
}
@media only screen and (min-width: 1200px) {
				.p-pagetop {
								bottom: 10px;
								right: 30px;
				}
}
@media only screen and (max-width: 1199px) {
				.p-pagetop {
								bottom: 1em;
								right: 2em;
				}
}
@media only screen and (max-width: 767px) {
				.p-pagetop {
								bottom: 5%;
								right: 5%;
				}
}
.p-pagetop_bg {
				fill: #46a078;
}

.p-pagetop_icon {
				fill: white;
}

.p-searchform__blk {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
				position: relative;
				margin: auto;
}
@media only screen and (min-width: 1200px) {
				.p-searchform__blk {
								width: 100%;
				}
}

.p-searchform__input {
				line-height: 1.6;
				font-size: 1rem;
				width: 100%;
				border: 1px solid #eee;
}

.p-searchform__btn {
				background: none;
				border: none;
				padding: 0 !important;
				margin: 0 !important;
				cursor: pointer;
				/*
				i{
					@include fs(16);
				}
				*/
}
.p-searchform__btn svg path {
				fill: #ddd;
}

@media only screen and (min-width: 1200px) {
				.p-single__eyecatch {
								margin-top: 1em;
								margin-bottom: 1em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-single__eyecatch {
								margin-top: 1em;
								margin-bottom: 1em;
				}
}
@media only screen and (max-width: 767px) {
				.p-single__eyecatch {
								margin-top: 5%;
								margin-bottom: 5%;
				}
}
.p-single__eyecatch img {
				width: 100%;
}

.p-single__ttl {
				line-height: 1.6;
				font-size: 2.1875rem;
}
@media only screen and (min-width: 1200px) {
				.p-single__ttl {
								margin-top: 0.1em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-single__ttl {
								margin-top: 1%;
				}
}
@media only screen and (max-width: 767px) {
				.p-single__ttl {
								margin-top: 3%;
				}
}

.p-single__count {
				line-height: 1.6;
				font-size: 0.875rem;
}
@media only screen and (min-width: 1200px) {
				.p-single__count {
								margin-bottom: 1em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-single__count {
								margin-bottom: 1em;
				}
}
@media only screen and (max-width: 767px) {
				.p-single__count {
								margin-bottom: 5%;
				}
}

.p-postnav {
				text-align: center;
				border-top: 1px solid #eee;
}
@media only screen and (min-width: 1200px) {
				.p-postnav {
								padding: 2em 0;
								margin-top: 2em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-postnav {
								padding: 1em 0;
								margin-top: 2em;
				}
}
@media only screen and (max-width: 767px) {
				.p-postnav {
								padding: 5% 0;
								margin-top: 7%;
				}
}
.p-postnav h2 {
				display: none;
}

@media only screen and (min-width: 1200px) {
				.p-postnav__blk {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}
@media only screen and (max-width: 1199px) {
				.p-postnav__blk {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}
@media only screen and (max-width: 1199px) {
				.p-postnav__blk a {
								display: block;
				}
}
@media only screen and (min-width: 1200px) {
				.p-postnav__prev,
				.p-postnav__next {
								max-width: 45%;
				}
}
@media only screen and (max-width: 1199px) {
				.p-postnav__prev,
				.p-postnav__next {
								margin-top: 1em;
								max-width: 47%;
								display: block;
				}
}
@media only screen and (max-width: 767px) {
				.p-postnav__prev,
				.p-postnav__next {
								margin-top: 0;
				}
}

.p-business__blk {
				background: white;
}
@media only screen and (min-width: 1200px) {
				.p-business__blk {
								padding: 3em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-business__blk {
								padding: 4%;
				}
}
@media only screen and (max-width: 767px) {
				.p-business__blk {
								padding: 5%;
				}
}

.p-business__box {
				border-bottom: 1px solid #eee;
}
@media only screen and (min-width: 1200px) {
				.p-business__box {
								padding: 3em 0;
				}
}
@media only screen and (max-width: 1199px) {
				.p-business__box {
								padding: 4% 0;
				}
}
@media only screen and (max-width: 767px) {
				.p-business__box {
								padding: 5% 0;
				}
}
.p-business__box:first-of-type {
				border-top: none;
				margin-top: 0;
				padding-top: 0;
}
.p-business__box h3 {
				line-height: 1.6;
				font-size: 1.5625rem;
				color: #46a078;
}

@media only screen and (min-width: 1200px) {
				.p-business__inner {
								margin-top: 1em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-business__inner {
								margin-top: 4%;
				}
}
@media only screen and (max-width: 767px) {
				.p-business__inner {
								margin-top: 5%;
				}
}
.p-business__inner h4 {
				line-height: 1.6;
				font-size: 1.25rem;
				margin-bottom: 0.5em;
}
@media only screen and (min-width: 1200px) {
				.p-business__inner dl {
								margin-top: 1em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-business__inner dl {
								margin-top: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.p-business__inner dl {
								margin-top: 5%;
				}
}
.p-business__inner dl dt {
				line-height: 1.6;
				font-size: 1.125rem;
}
@media only screen and (min-width: 1200px) {
				.p-business__inner table {
								margin-top: 1em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-business__inner table {
								margin-top: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.p-business__inner table {
								margin-top: 5%;
				}
}

.p-business__support ul li {
				background: #eee;
}
@media only screen and (min-width: 1200px) {
				.p-business__support ul li {
								padding: 0.7em 1em;
								margin-top: 1em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-business__support ul li {
								padding: 0.7em 1em;
								margin-top: 2%;
				}
}
@media only screen and (max-width: 767px) {
				.p-business__support ul li {
								padding: 0.7em 1em;
								margin-top: 4%;
				}
}

.front-hero {
				background-repeat: no-repeat;
				background-size: cover;
				background-position: 50%;
}
@media only screen and (min-width: 1200px) {
				.front-hero {
								background-image: url("../img/front/mv-l.jpg");
								aspect-ratio: 2/1.2;
				}
}
@media only screen and (max-width: 1199px) {
				.front-hero {
								background-image: url("../img/front/mv-l.jpg");
								aspect-ratio: 3/2;
				}
}
@media only screen and (max-width: 767px) {
				.front-hero {
								background-image: url("../img/front/mv-s.jpg");
								aspect-ratio: 1/1.5;
				}
}

.front-hero__inner {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-align: end;
				    -ms-flex-align: end;
				        align-items: flex-end;
				height: 100%;
}

.front-hero__blk {
				color: white;
}
@media only screen and (min-width: 1200px) {
				.front-hero__blk {
								padding-bottom: 2em;
				}
}
@media only screen and (max-width: 1199px) {
				.front-hero__blk {
								padding-bottom: 1em;
				}
}
.front-hero__blk h2 {
				line-height: 1.6;
				font-size: 2.8125rem;
}
@media only screen and (max-width: 1199px) {
				.front-hero__blk h2 {
								font-size: 2rem;
				}
}
.front-hero__blk p {
				line-height: 1.6;
				font-size: 1.5625rem;
}
@media only screen and (max-width: 1199px) {
				.front-hero__blk p {
								font-size: 1rem;
				}
}
@media only screen and (min-width: 1200px) {
				.front-media {
								margin-top: 4em !important;
				}
}
@media only screen and (max-width: 1199px) {
				.front-media {
								margin-top: 3em !important;
				}
}
@media only screen and (max-width: 767px) {
				.front-media {
								margin-top: 10% !important;
				}
}

.front-media__blk h4 {
				line-height: 1.6;
				font-size: 1.5625rem;
}
.front-media__blk h5 {
				margin-top: 0.5em;
}
.front-media__blk p {
				margin-top: 0.5em;
}
.front-media__blk dl {
				margin-top: 1em;
}
@media only screen and (max-width: 767px) {
				.front-media__blk dl {
								margin-top: 5%;
				}
}

@media only screen and (min-width: 1200px) {
				.front-media__video {
								margin-top: 1.5em;
				}
}
@media only screen and (max-width: 1199px) {
				.front-media__video {
								margin-top: 1em;
				}
}
@media only screen and (max-width: 767px) {
				.front-media__video {
								margin-top: 5%;
				}
}

.front-vision__ttl {
				text-align: center;
}

.front-vision__content {
				line-height: 1.6;
				font-size: 1.1875rem;
				text-align: center;
				font-weight: bold;
}

@media only screen and (min-width: 1200px) {
				.front-video dl {
								margin-top: 2em;
				}
}
@media only screen and (max-width: 1199px) {
				.front-video dl {
								margin-top: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.front-video dl {
								margin-top: 6%;
				}
}
.front-video dl dd {
				font-weight: bold;
				line-height: 1.6;
				font-size: 1.0625rem;
				margin-top: 0.3em;
}
.front-video dl:first-child {
				margin-top: 0;
}

@media only screen and (min-width: 1200px) {
				.front-news__list {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}
@media only screen and (min-width: 1200px) {
				.front-news__list li {
								width: 49%;
								margin-bottom: 2%;
				}
}
@media only screen and (max-width: 1199px) {
				.front-news__list li {
								margin-bottom: 2%;
				}
}
@media only screen and (min-width: 1200px) {
				.front-news__btn {
								text-align: left;
								margin-top: 0.1em;
				}
}
.business-intro__blk {
				position: relative;
}
@media only screen and (min-width: 1200px) {
				.business-intro__blk {
								min-height: 800px;
				}
}
.business-intro__card {
				border-left: 6px solid #46a078;
				padding-left: 1em;
}
@media only screen and (min-width: 1200px) {
				.business-intro__card {
								position: absolute;
								width: 40%;
				}
}
@media only screen and (max-width: 1199px) {
				.business-intro__card {
								width: 100%;
								margin-bottom: 1.8em;
				}
}
@media only screen and (min-width: 1200px) {
				.business-intro__card--2 {
								top: 20%;
								left: 50%;
				}
}
@media only screen and (min-width: 1200px) {
				.business-intro__card--3 {
								top: 60%;
								right: 0;
				}
}
.business-intro__card h4 {
				line-height: 1.6;
				font-size: 1.875rem;
				line-height: 1.5;
}
@media only screen and (max-width: 767px) {
				.business-intro__card h4 {
								font-size: 1.4rem;
				}
}
.business-intro__card h4 span {
				display: block;
				line-height: 1.6;
				font-size: 1rem;
				line-height: 1;
}
.business-intro__card p {
				margin-top: 0.5em;
}

.business-intro__obj {
				position: absolute;
				z-index: -1;
}
@media only screen and (min-width: 1200px) {
				.business-intro__obj {
								bottom: 0;
				}
}
@media only screen and (max-width: 1199px) {
				.business-intro__obj {
								display: none;
				}
}
@media only screen and (min-width: 1200px) {
				.business-thought__blk {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}
@media only screen and (min-width: 1200px) {
				.business-thought__card--1 {
								width: 40%;
				}
}
@media only screen and (max-width: 1199px) {
				.business-thought__card--1 {
								margin-bottom: 1.5em;
				}
}
@media only screen and (min-width: 1200px) {
				.business-thought__card--2 {
								width: 56%;
								margin-top: 3em;
				}
}
.business-thought__box {
				background: white;
}
@media only screen and (min-width: 1200px) {
				.business-thought__box {
								padding: 1.8em;
				}
}
@media only screen and (max-width: 1199px) {
				.business-thought__box {
								padding: 1.5em;
				}
}
@media only screen and (min-width: 1200px) {
				.business-thought__box p {
								margin-top: 1em;
				}
}
@media only screen and (max-width: 1199px) {
				.business-thought__box p {
								margin-top: 0.5em;
				}
}
.business-thought__head {
				position: relative;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: justify;
				    -ms-flex-pack: justify;
				        justify-content: space-between;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
}
.business-thought__head::after {
				-webkit-box-flex: 1;
				    -ms-flex: 1;
				        flex: 1;
				content: "";
				display: block;
				background: #46a078;
				width: 100%;
				height: 1px;
}
.business-thought__head h4 {
				line-height: 1.6;
				font-size: 1.5625rem;
				position: relative;
				background: white;
				display: inline-block;
				padding-right: 1em;
}
@media only screen and (max-width: 767px) {
				.business-thought__head h4 {
								font-size: 1.2rem;
				}
}

@media only screen and (min-width: 1200px) {
				.business-evolution__lead {
								width: 60%;
				}
}
@media only screen and (min-width: 1200px) {
				.business-evolution__obj {
								width: 35%;
								margin-top: -250px;
								float: right;
				}
}
@media only screen and (max-width: 1199px) {
				.business-evolution__obj {
								display: none;
				}
}
.p-business-evolution__cards {
				clear: both;
}
@media only screen and (min-width: 1200px) {
				.p-business-evolution__cards {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}
@media only screen and (max-width: 1199px) {
				.p-business-evolution__cards {
								margin-top: 1.5em;
				}
}
@media only screen and (min-width: 1200px) {
				.p-business-evolution__card {
								width: 48%;
				}
}
@media only screen and (max-width: 1199px) {
				.p-business-evolution__card {
								width: 100%;
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}
@media only screen and (max-width: 767px) {
				.p-business-evolution__card {
								display: block;
				}
}
@media only screen and (min-width: 1200px) {
				.p-business-evolution__card--2 {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-orient: vertical;
								-webkit-box-direction: normal;
								    -ms-flex-direction: column;
								        flex-direction: column;
								margin-top: 5em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-business-evolution__card--2 {
								margin-top: 2em;
								-webkit-box-orient: horizontal;
								-webkit-box-direction: reverse;
								    -ms-flex-direction: row-reverse;
								        flex-direction: row-reverse;
				}
}
@media only screen and (min-width: 1200px) {
				.p-business-evolution__card div {
								-webkit-box-ordinal-group: 3;
								    -ms-flex-order: 2;
								        order: 2;
				}
}
@media only screen and (max-width: 1199px) {
				.p-business-evolution__card div {
								width: 70%;
								padding-right: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.p-business-evolution__card div {
								width: 100%;
								padding-right: 0;
				}
}
.p-business-evolution__card div h4 {
				color: #46a078;
				line-height: 1.6;
				font-size: 1.6875rem;
}
@media only screen and (max-width: 767px) {
				.p-business-evolution__card div h4 {
								font-size: 1.3rem;
				}
}
.p-business-evolution__card div p {
				margin-top: 0.5em;
}

@media only screen and (max-width: 1199px) {
				.p-business-evolution__card--2 div {
								padding-right: 0;
								padding-left: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.p-business-evolution__card--2 div {
								padding-left: 0;
				}
}

@media only screen and (min-width: 1200px) {
				.p-business-evolution__pht {
								margin-top: 1.5em;
								margin-bottom: 1em;
				}
}
@media only screen and (max-width: 1199px) {
				.p-business-evolution__pht {
								-webkit-box-flex: 1;
								    -ms-flex: 1;
								        flex: 1;
				}
}
@media only screen and (max-width: 767px) {
				.p-business-evolution__pht {
								margin-top: 4%;
				}
}
.p-business-evolution__pht img {
				border-radius: 20px;
}

.business-products__blk {
				background: #E5EFEB;
}
@media only screen and (min-width: 1200px) {
				.business-products__blk {
								padding: 2em;
								padding-bottom: 3em;
				}
}
@media only screen and (max-width: 1199px) {
				.business-products__blk {
								padding: 3%;
								padding-bottom: 4%;
				}
}
@media only screen and (max-width: 767px) {
				.business-products__blk {
								padding: 5%;
								padding-bottom: 5%;
				}
}

@media only screen and (min-width: 1200px) {
				.business-products__cards {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}
.business-products__card {
				background: white;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: justify;
				    -ms-flex-pack: justify;
				        justify-content: space-between;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
}
@media only screen and (min-width: 1200px) {
				.business-products__card {
								width: 49%;
								padding: 1.5em;
								margin-bottom: 1.5em;
				}
}
@media only screen and (max-width: 1199px) {
				.business-products__card {
								margin-bottom: 3%;
								padding: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.business-products__card {
								display: block;
								margin-bottom: 5%;
								padding: 5%;
				}
}

@media only screen and (min-width: 1200px) {
				.business-products__thumb {
								width: 40%;
				}
}
@media only screen and (max-width: 1199px) {
				.business-products__thumb {
								width: 40%;
				}
}
@media only screen and (max-width: 767px) {
				.business-products__thumb {
								width: 70%;
								margin: auto;
				}
}

@media only screen and (min-width: 1200px) {
				.business-products__box {
								width: 55%;
				}
}
@media only screen and (max-width: 1199px) {
				.business-products__box {
								width: 57%;
				}
}
@media only screen and (max-width: 767px) {
				.business-products__box {
								width: 100%;
				}
}
.business-products__box h4 {
				line-height: 1.6;
				font-size: 1.25rem;
}

.business-products__tbl {
				line-height: 1.6;
				font-size: 0.875rem;
}
@media only screen and (min-width: 1200px) {
				.business-products__tbl {
								margin-top: 0.6em;
				}
}
@media only screen and (max-width: 1199px) {
				.business-products__tbl {
								margin-top: 0.8em;
				}
}
@media only screen and (min-width: 1200px) {
				.business-products__tbl th {
								width: 40%;
				}
}
@media only screen and (max-width: 1199px) {
				.business-products__tbl th {
								width: 30%;
				}
}
@media only screen and (min-width: 1200px) {
				.business-products__link {
								text-align: right;
								margin-top: 0.5em;
				}
}
@media only screen and (max-width: 1199px) {
				.business-products__link {
								margin-top: 0.7em;
				}
}
@media only screen and (min-width: 1200px) {
				.business-products__btn {
								margin-top: 1em;
				}
}
.business-project__cards {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: justify;
				    -ms-flex-pack: justify;
				        justify-content: space-between;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
}
@media only screen and (min-width: 1200px) {
				.business-project__cards {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: start;
								    -ms-flex-pack: start;
								        justify-content: flex-start;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}
@media only screen and (max-width: 767px) {
				.business-project__cards {
								display: block;
				}
}

.business-project__card {
				background: white;
}
@media only screen and (min-width: 1200px) {
				.business-project__card {
								width: 31%;
								padding: 1.5em;
								padding-top: 2.5em;
								margin-bottom: 3%;
								margin-left: 3.5%;
				}
}
@media only screen and (max-width: 1199px) {
				.business-project__card {
								padding: 3%;
								width: 48.5%;
								margin-bottom: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.business-project__card {
								padding: 5%;
								width: 100%;
								margin-bottom: 5%;
				}
}
.business-project__card:nth-child(3n+1) {
				margin-left: 0;
}
.business-project__card h5 {
				line-height: 1.6;
				font-size: 1.25rem;
				font-weight: bold;
}
@media only screen and (min-width: 1200px) {
				.business-project__card h5 {
								margin-top: 0.8em;
				}
}
.business-project__icon {
				text-align: center;
				line-height: 1.6;
				font-size: 5rem;
}
@media only screen and (min-width: 1200px) {
				.business-project__icon {
								margin: auto;
				}
}
.business-project__lead {
				line-height: 1.6;
				font-size: 0.9375rem;
}
@media only screen and (min-width: 1200px) {
				.business-project__lead {
								margin-top: 0.2em;
				}
}
@media only screen and (max-width: 1199px) {
				.business-project__lead {
								margin-top: 0.4em;
				}
}
.business-project__doc {
				background: #eee;
}
@media only screen and (min-width: 1200px) {
				.business-project__doc {
								padding: 1em;
								margin-top: 0.5em;
				}
}
@media only screen and (max-width: 1199px) {
				.business-project__doc {
								padding: 1em;
								margin-top: 0.7em;
				}
}
.business-project__doc dd ul {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
}
@media only screen and (min-width: 1200px) {
				.business-project__doc dd ul {
								margin-top: 0.5em;
				}
}
@media only screen and (max-width: 1199px) {
				.business-project__doc dd ul {
								margin-top: 0.6em;
				}
}
.business-project__doc dd ul li {
				margin-right: 0.7em;
}
.business-project__doc dd ul li a {
				background: #46a078;
				color: white;
				padding: 0.4em 0.8em;
				display: block;
				border-radius: 5px;
				line-height: 1.6;
				font-size: 0.9375rem;
}
.business-project__doc dd ul li a i {
				margin-left: 0.2em;
}

.member-list__card {
				background: white;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
}
@media only screen and (min-width: 1200px) {
				.member-list__card {
								padding: 1.7em;
								margin-bottom: 1.7em;
				}
}
@media only screen and (max-width: 1199px) {
				.member-list__card {
								padding: 3%;
								margin-bottom: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.member-list__card {
								display: block;
								padding: 5%;
								margin-bottom: 5%;
				}
}

@media only screen and (min-width: 1200px) {
				.member-list__thumb {
								width: 25%;
				}
}
@media only screen and (max-width: 1199px) {
				.member-list__thumb {
								width: 30%;
				}
}
@media only screen and (max-width: 767px) {
				.member-list__thumb {
								width: 100%;
				}
}

.member-list__box {
				-webkit-box-flex: 1;
				    -ms-flex: 1;
				        flex: 1;
}
@media only screen and (min-width: 1200px) {
				.member-list__box {
								padding-left: 1.7em;
				}
}
@media only screen and (max-width: 1199px) {
				.member-list__box {
								padding-left: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.member-list__box {
								padding-left: 0;
								margin-top: 5%;
				}
}

.member-list__head h4 {
				line-height: 1.6;
				font-size: 1.5625rem;
}
.member-list__head h4 span {
				display: block;
				font-weight: normal;
				line-height: 1.6;
				font-size: 0.875rem;
}

.member-list__job {
				line-height: 1.6;
				font-size: 0.8125rem;
				margin-top: 1.5em;
}

.member-list__content {
				margin-top: 1em;
}

.member-list--sub {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: justify;
				    -ms-flex-pack: justify;
				        justify-content: space-between;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
				.member-list--sub {
								display: block;
				}
}
.member-list--sub li {
				background: white;
}
@media only screen and (min-width: 1200px) {
				.member-list--sub li {
								padding: 1.7em;
								width: 49%;
								margin-bottom: 1.7em;
				}
}
@media only screen and (max-width: 1199px) {
				.member-list--sub li {
								padding: 3%;
								width: 48.5%;
								margin-bottom: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.member-list--sub li {
								padding: 5%;
								width: 100%;
								margin-bottom: 5%;
				}
}
.member-list--sub li dl {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
}
.member-list--sub li dl dt {
				line-height: 1.6;
				font-size: 1.25rem;
				padding-right: 1em;
}
.member-list--sub li dl dd {
				line-height: 1.6;
				font-size: 0.8125rem;
}

.member-list__pht {
				width: 100%;
}
.member-list__pht img {
				width: 100%;
}

.company-summary__blk {
				background: white;
}
@media only screen and (min-width: 1200px) {
				.company-summary__blk {
								padding: 3em;
				}
}
@media only screen and (max-width: 1199px) {
				.company-summary__blk {
								padding: 4%;
				}
}
.company-summary__blk dl {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				border-bottom: 1px solid #eee;
				padding: 1em 0;
}
@media only screen and (min-width: 1200px) {
				.company-summary__blk dl dt {
								width: 26%;
				}
}
@media only screen and (max-width: 1199px) {
				.company-summary__blk dl dt {
								width: 30%;
				}
}
.company-summary__blk dl dd {
				-webkit-box-flex: 1;
				    -ms-flex: 1;
				        flex: 1;
}
.company-summary__blk dl dd ul li {
				margin-bottom: 0.4em;
}
.company-summary__blk dl dd ul li:last-child {
				margin-bottom: 0;
}

.company-summary__map {
				padding: 1em 0 0;
}
@media only screen and (min-width: 1200px) {
				.company-summary__map div {
								margin-bottom: 1em;
				}
}
@media only screen and (max-width: 1199px) {
				.company-summary__map div {
								margin-bottom: 3%;
				}
}
.company-summary__map div h4 {
				margin-bottom: 0.3em;
}
.products-contents {
				background: white;
}
@media only screen and (min-width: 1200px) {
				.products-contents {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
								padding: 3em;
				}
}
@media only screen and (max-width: 1199px) {
				.products-contents {
								padding: 4%;
				}
}
@media only screen and (max-width: 767px) {
				.products-contents {
								padding: 5%;
				}
}

@media only screen and (min-width: 1200px) {
				.products-contents__eyecatch {
								width: 40%;
				}
}
@media only screen and (min-width: 1200px) {
				.products-contents__blk {
								width: 55%;
				}
}
@media only screen and (max-width: 1199px) {
				.products-contents__blk {
								margin-top: 3%;
				}
}
.products-contents__blk h3 {
				line-height: 1.6;
				font-size: 1.875rem;
}
@media only screen and (max-width: 767px) {
				.products-contents__blk h3 {
								font-size: 1.4rem;
				}
}
@media only screen and (min-width: 1200px) {
				.products-contents__blk table {
								margin-top: 1em;
				}
}
@media only screen and (max-width: 1199px) {
				.products-contents__blk table {
								margin-top: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.products-contents__blk table {
								margin-top: 5%;
				}
}
@media only screen and (min-width: 1200px) {
				.products-contents__blk table th {
								width: 30%;
				}
}
@media only screen and (max-width: 1199px) {
				.products-contents__blk table th {
								width: 30%;
				}
}
@media only screen and (min-width: 1200px) {
				.products-contents__lead {
								margin-top: 1em;
				}
}
@media only screen and (max-width: 1199px) {
				.products-contents__lead {
								margin-top: 1%;
				}
}
@media only screen and (max-width: 767px) {
				.products-contents__lead {
								margin-top: 2%;
				}
}

.manual-list__cards {
				background: white;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
}
@media only screen and (min-width: 1200px) {
				.manual-list__cards {
								padding: 2em;
				}
}
@media only screen and (max-width: 767px) {
				.manual-list__cards {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}

.manual-list__card {
				text-align: center;
}
@media only screen and (min-width: 1200px) {
				.manual-list__card {
								margin-bottom: 1.7em;
								width: 20%;
								padding: 1em;
				}
}
@media only screen and (max-width: 1199px) {
				.manual-list__card {
								width: 33.333%;
								margin-bottom: 3%;
								padding: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.manual-list__card {
								width: 50%;
								padding: 5%;
								margin-bottom: 5%;
				}
}
.manual-list__card a div img {
				-o-object-fit: cover;
				   object-fit: cover;
				max-width: 100%;
				aspect-ratio: 1;
}
.manual-contents {
				background: white;
}
@media only screen and (min-width: 1200px) {
				.manual-contents {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: justify;
								    -ms-flex-pack: justify;
								        justify-content: space-between;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
								padding: 2em;
				}
}
@media only screen and (max-width: 1199px) {
				.manual-contents {
								padding: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.manual-contents {
								padding: 5%;
				}
}

@media only screen and (min-width: 1200px) {
				.manual-contents__eyecatch {
								width: 50%;
				}
}
.manual-contents__blk {
				-webkit-box-flex: 1;
				    -ms-flex: 1;
				        flex: 1;
}
@media only screen and (min-width: 1200px) {
				.manual-contents__blk {
								padding: 2em;
								padding-left: 0;
				}
}
@media only screen and (min-width: 1200px) {
				.manual-contents__btn {
								text-align: left;
				}
}
.achievement-list__cards {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: justify;
				    -ms-flex-pack: justify;
				        justify-content: space-between;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
}
@media only screen and (min-width: 1200px) {
				.achievement-list__cards {
								display: -webkit-box;
								display: -ms-flexbox;
								display: flex;
								-webkit-box-pack: start;
								    -ms-flex-pack: start;
								        justify-content: flex-start;
								-ms-flex-wrap: wrap;
								    flex-wrap: wrap;
				}
}
@media only screen and (max-width: 767px) {
				.achievement-list__cards {
								display: block;
				}
}

.achievement-list__card {
				background: white;
}
@media only screen and (min-width: 1200px) {
				.achievement-list__card {
								width: 31%;
								padding: 1.5em;
								margin-bottom: 3%;
								margin-left: 3.5%;
				}
}
@media only screen and (max-width: 1199px) {
				.achievement-list__card {
								padding: 3%;
								width: 48.5%;
								margin-bottom: 3%;
				}
}
@media only screen and (max-width: 767px) {
				.achievement-list__card {
								padding: 5%;
								width: 100%;
								margin-bottom: 5%;
				}
}
.achievement-list__card:nth-child(3n+1) {
				margin-left: 0;
}

.achievement-list__thumb img {
				-o-object-fit: cover;
				   object-fit: cover;
				max-width: 100%;
				aspect-ratio: 3/2;
}

.achievement-list__contents h4 {
				line-height: 1.6;
				font-size: 1.25rem;
				font-weight: bold;
}
@media only screen and (min-width: 1200px) {
				.achievement-list__contents h4 {
								margin-top: 0.8em;
				}
}
.achievement-list__excerpt {
				line-height: 1.6;
				font-size: 0.875rem;
				margin-top: 0.7em;
}
@media only screen and (min-width: 1200px) {
				.privacy-terms__box {
								margin-top: 2em;
				}
}
@media only screen and (max-width: 1199px) {
				.privacy-terms__box {
								margin-top: 1.5em;
				}
}
@media only screen and (max-width: 767px) {
				.privacy-terms__box {
								margin-top: 4%;
				}
}
.privacy-terms__box dt {
				font-weight: bold;
				line-height: 1.6;
				font-size: 1.125rem;
}
.privacy-terms__box dd {
				margin-top: 0.6em;
}
.privacy-terms__box dd ul li {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
}
.privacy-terms__box dd ul li:before {
				content: "-";
				width: 1em;
				margin-right: 0.1em;
				display: inline-block;
}
.privacy-terms__box dd ul li div {
				-webkit-box-flex: 1;
				    -ms-flex: 1;
				        flex: 1;
}

.privacy-terms__address {
				margin-top: 1em;
}
@media only screen and (max-width: 767px) {
				.privacy-terms__address {
								margin-top: 5%;
				}
}
.privacy-terms__address a {
				background: white;
				display: block;
				padding: 1.7em;
				text-decoration: none;
}
@media only screen and (max-width: 767px) {
				.privacy-terms__address a {
								padding: 5%;
				}
}
.privacy-terms__address a dl dt {
				font-weight: bold;
				margin-bottom: 0.5em;
				color: #222;
}
.privacy-terms__address a dd {
				line-height: 1.6;
				font-size: 0.875rem;
				color: #222;
}
.privacy-terms__address a dd span {
				text-decoration: underline;
				color: #46a078;
}
/*# sourceMappingURL=style.css.map */