@charset 'utf-8';


/* #############################################################

[ その他 ] ユーティリティおよびコンポーネントのスタイルをまとめる

############################################################# */

/* ==========================================================================
	Utility
=========================================================================== */

.u-pc {display: block !important;}
.u-sp {display: none !important;}

@media screen and (max-width:38em) {
	.u-pc {display: none !important;}
	.u-sp {display: block !important;}
}

/*clear fix*/
div:after, ul:after, dl:after, dt:after, dd:after, td:after,
article:after, aside:after, canvas:after, footer:after, header:after, hgroup:after, menu:after, nav:after, section:after {content:""; display:block; clear:both;}


/** -------------------------------- **
	Text
*** ----------------------------------------------------------------- ***/
.u-align--left {text-align: left;}
.u-align--right {text-align: right;}
.u-align--center {text-align: center;}

.u-txt-keyword {
	font-size: 1.75rem;
	font-weight: 400;
	letter-spacing: .5rem;
}

@media screen and (max-width:56.25em) {
	.u-txt-keyword {
		font-size: calc((32 * 100vw)/ 768);
		letter-spacing: .2rem;
	}
}

@media screen and (max-width:38em) {
	.u-txt-keyword {
		font-size: calc( ( 26 * 100vw ) / 414 );
	}
}

/** -------------------------------- **
	Color
*** ----------------------------------------------------------------- ***/

/* Text Color
--------------------------------------------- */
.txt-color--white {
    color: #fff;
}
.txt-color--gray {
    color: #8d8d8d;
}
.txt-color--light-gray {
    color: #f3f3f3;
}
.txt-color--dark-gray {
    color: #050404;
}
.txt-color--orange {
    color: #f9593e;
}
.txt-color--blue {
    color: #0366ac;
}
.txt-color--dark-blue {
    color: #014099;
}
.txt-color--cyan {
    color: #309ce8;
}
.txt-color--dark-cyan {
    color: #4d8ad3;
}
.txt-color--yellow {
    color: #fffd70;
}
.txt-color--green {
    color: #00b953;
}
.txt-color--red {
    color: #e72126;
}


/* Bg Color
--------------------------------------------- */
.bg-color--white {
    background-color: #fff;
}
.bg-color--black {
    background-color: #000;
}

.bg-color--gray {
    background-color: #8d8d8d;
}
.bg-color--light-gray {
    background-color: #f3f3f3;
}
.bg-color--dark-gray {
    background-color: #050404;
}
.bg-color--orange {
    background-color: #f9593e;
}
.bg-color--blue {
    background-color: #0366ac;
}
.bg-color--dark-blue {
    background-color: #014099;
}
.bg-color--cyan {
    background-color: #309ce8;
}
.bg-color--dark-cyan {
    background-color: #4d8ad3;
}
.bg-color--light-cyan {
    background-color: #e7eeff;
}
.bg-color--yellow {
    background-color: #fffd70;
}
.bg-color--green {
    background-color: #00b953;
}


/* Border Round
--------------------------------------------- */
.border-round--circle {
	border-radius: 50%;
}
.border-round--25px {
	border-radius: 25px;
}


/** -------------------------------- **
	Button
*** ----------------------------------------------------------------- ***/
.u-btn a,
.u-btn--large a {display: block;}

/*c-btn-col*/
.c-btn-col {
	text-align: center;
	padding-left: 0;
	list-style: none;
}
.c-btn-col .u-btn {
	display: inline-block;
	margin: 0 5px;
	vertical-align: middle;
}
.c-btn-col .u-btn .more-btn.bg-color--blue {
	max-width: 100%;
	width: 230px;
	font-size: 1rem;
}
.c-btn-col .u-btn .more-btn.bg-color--yellow {
	max-width: 100%;
	width: 230px;
	font-size: 1rem;
}
.u-btn .more-btn.bg-color--white {
	max-width: 100%;
	width: 230px;
	font-size: 1.125rem;
	border:1px solid #2a2a2a;
	text-align:center;
	padding:18px 0;
}
.u-btn .more-btn.bg-color--black {
	max-width: 100%;
	width: 230px;
	font-size: 1.125rem;
	text-align:center;
	padding:18px 0;
	color:#fff;
}
.submit-btn {
    max-width: 100%;
    width: 230px;
    font-size: 1.125rem;
    text-align:center;
    padding:18px 0;
    color:#fff;
}


/*c-txtlink-col*/
.c-txtlink-col {
	padding-left: 0;
	list-style: none;
}
.c-txtlink-col .u-txt-link {
	display: inline-block;
	margin-right: 50px;
	vertical-align: middle;
}
.c-txtlink-col .txt-link--arr {
	display: block;
	font-size: 1.125rem;
	font-weight: 500;
	color: #0366ac;
	padding-left: 20px;
	position: relative;
}
.c-txtlink-col .txt-link--arr::before {
	display: block;
	content: '';
	width: 12px;
	height: 18px;
	background: resolve('common/icon-arr-01--blue.svg') center no-repeat;
	background-size: contain;
	transform: rotate(90deg);
	position: absolute;
	left: 0;
	top: 6px;
}

@media screen and (max-width:38em) {
	.c-txtlink-col .u-txt-link {
		display: block;
		margin-right: 0;
		margin-bottom: 5%;
	}
	.c-txtlink-col .txt-link--arr {
		font-size: calc( ( 16 * 100vw ) / 414 );
	}
}

/* Button Setting
--------------------------------------------- */

/* more-btn */
.more-btn.bg-color--blue {
	max-width: 180px;
	color: #fff;
	border: 1px solid #fff;
	font-size: 0.937rem;
	padding: 8px 10px;
	text-align: center;
  transition: all .3s;
}
.more-btn.bg-color--yellow {
	max-width: 120px;
	border: 1px solid #fffd70;
	font-size: 0.937rem;
	padding: 8px 10px;
	text-align: center;
  transition: all .3s;
}

.u-btn--large {
	max-width: 582px;
	margin: 0 auto;
}
.u-btn--large .more-btn.bg-color--blue {
	max-width: 100%;
	font-size: 1.125rem;
	letter-spacing: .2rem;
	padding: 25px 10px;
}

@media screen and (max-width:38em) {
	.u-btn--large .more-btn.bg-color--blue {
		font-size: calc( ( 18 * 100vw ) / 414 );
	}
}

/* contact-btn */
.contact-btn {
	color: #fff;
	border: 1px solid #f9593e;
	font-size: 0.937rem;
	padding: 30px 50px;
  transition: all .3s;
}
.contact-btn.bg-color--blue {
	color: #fff;
	border: 1px solid #0366ac;
	padding: 15px 20px;
}
.contact-btn .icon-mail {
	width: 31px;
	height: 24px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 20px;
}
.contact-btn .icon-mail svg {
	width: 31px;
	height: 24px;
}
.contact-btn .svg-mail {
	fill: #fff;
  transition: all .3s;
}

/* blank-btn */
.u-btn .blank-btn {
	display: inline-block;
	width: auto;
	font-size: 0.937rem;
	padding: 6px 10px;
	margin-top: 1rem;
	position: relative;
  transition: all .3s;
}
.u-btn .blank-btn::after {
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 18px;
	margin-left: 10px;
	background: resolve('common/icon-window.svg') center no-repeat;
	background-size: cover;
}

/* submit-btn */
.submit-btn.bg-color--orange {
	width: 46%;
	font-size: 1.125rem;
	letter-spacing: .2rem;
	margin-top: 40px;
	padding: 25px 10px;
	border: 1px solid #f9593e;
	cursor: pointer;
  transition: all .3s;
}
.submit-back-btn {
	width: 46%;
	font-size: 1.125rem;
	letter-spacing: .2rem;
	margin-top: 40px;
	margin-left: 20px;
	padding: 25px 10px;
	cursor: pointer;
	border: 1px solid #2a2a2a;
}

@media screen and (max-width:38em) {
	.submit-btn.bg-color--orange {
		width: 46%;
		padding: 4%;
	}
	.submit-back-btn {
		width: 46%;
		padding: 4%;
	}
}

/* Button Hover Setting
背景色によって指定を変える
--------------------------------------------- */
.u-btn .bg-color--orange:hover {
	color: #2a2a2a;
	border: 1px solid #2a2a2a;
	background: #fff;
}
.u-btn .bg-color--blue:hover .svg-mail,
.u-btn .bg-color--orange:hover .svg-mail {
	fill: #2a2a2a;
}

.u-btn .bg-color--blue:hover,
.u-btn--large .bg-color--blue:hover,
.u-btn--large .bg-color--orange:hover {
	color: #2a2a2a;
	background: #fff;
	border: 1px solid #2a2a2a;
}

.u-btn .bg-color--yellow:hover {
	color: #2a2a2a;
	background: #fff;
	border: 1px solid #2a2a2a;
}

/* icon Setting
--------------------------------------------- */
.icon-pdf {
	width: 22px;
	height: 26px;
	display: inline-block;
	vertical-align: middle;
	margin: 0 10px;
}

.icon-xlsx {
	width: 26px;
	height: 32px;
	display: inline-block;
	vertical-align: middle;
	margin: 0 10px;
}



/* Page top
--------------------------------------------- */
.pagetop-btn--pc {
	width: 118px;
	padding: 20% 0;
	color: #fff;
	text-align: center;
	transition: all .3s;
	border: 1px solid #050404;
}
.pagetop-btn--pc svg {
	display: block;
	margin: 0 auto 10px;
	width: 24px;
	height: 14px;
}
.pagetop-btn--pc .svg-arr {
	fill:none;
	stroke:#fff;
	stroke-miterlimit:10;
	stroke-width:3px;
}
.pagetop-btn--pc:hover {
	color: #2a2a2a;
	background: #fff;
}
.pagetop-btn--pc:hover .svg-arr {
	stroke: #2a2a2a;
}


/* ==========================================================================
	Component
=========================================================================== */

/** -------------------------------- **
	Title
*** ----------------------------------------------------------------- ***/

/* parent title
--------------------------------------------- */
.c-parent-subject {
	display: flex;
	flex-wrap: nowrap;
	height: 300px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.c-parent-subject--txt {
	flex-grow: 0;
	flex-shrink: 0;
	flex-basis: 100%;
	padding-top: 90px;
	text-align: right;
	align-self: center;
	color: #fff;
	font-size: 3rem;
	font-weight: 500;
}
.c-parent-subject--txt .c-parent-subject--eng {
	display: block;
	font-size: 1.75rem;
}

@media screen and (max-width:38em) {
	.c-parent-subject {
		/*height: 28vh;*/
		height: 160px;
		margin-top:50px;
	}
	.c-parent-subject--txt {
		padding-top: 4%;
		padding-right: 2%;
		font-size: calc( ( 25 * 100vw ) / 414 );
	}
	.c-parent-subject--txt .c-parent-subject--eng {
		font-size: calc( ( 16 * 100vw ) / 414 );
	}
}

/* page img */
.bg-img--company {
	background-image: url('/_nahaportcenter/wp-content/themes/nahaportcenter/assets/images/company/cat-img.jpg');
	background-size: cover;
}
.bg-img--service {
	background-image: resolve('common/bg-sec-title.jpg');
	background-size: cover;
}
.bg-img--access {
	background-image: url('/_nahaportcenter/wp-content/themes/nahaportcenter/assets/images/access/cat-img.jpg');
	background-size: cover;
}
.bg-img--contact {
	background-image: url('/_nahaportcenter/wp-content/themes/nahaportcenter/assets/images/contact/cat-img.jpg');
	background-size: cover;
}
.bg-img--equipment {
	background-image: url('/_nahaportcenter/wp-content/themes/nahaportcenter/assets/images/equipment/cat-img.jpg');
	background-size: cover;
}
.bg-img--feature {
	background-image: url('/_nahaportcenter/wp-content/themes/nahaportcenter/assets/images/feature/cat-img.jpg');
	background-size: cover;
}
.bg-img--privacy {
	background-image: url('/_nahaportcenter/wp-content/themes/nahaportcenter/assets/images/privacy/cat-img.jpg');
	background-size: cover;
}
.bg-img--sitemap {
    background-image: url('/_nahaportcenter/wp-content/themes/nahaportcenter/assets/images/sitemap/cat-img.jpg');
    background-size: cover;
}
.bg-img--tenant {
	background-image: url('/_nahaportcenter/wp-content/themes/nahaportcenter/assets/images/tenant/cat-img.jpg');
	background-size: cover;
}
.bg-img--news {
    background-image: url('/_nahaportcenter/wp-content/themes/nahaportcenter/assets/images/news/cat-img.jpg');
    background-size: cover;
}


@media screen and (max-width:38em) {
	.bg-img--company {
		background-image: resolve('common/bg-sec-title--company.jpg');
		background-size: cover;
	}
	.bg-img--service {
		background-image: resolve('common/bg-sec-title.jpg');
		background-size: cover;
	}
}


/* page title
--------------------------------------------- */
.c-page-subject {
	width: 100%;
	text-align: center;
}
.c-page-subject-inner {
	position: relative;
    padding: 35px 0 35px;
    border-bottom: 1px solid #ddd;
	margin-bottom: 80px;
}

@media screen and (max-width: 38em){
.c-page-subject-inner {
    padding: 20px 0 20px;
	margin-bottom: 20px;
}
}

.c-page-subject-inner02 {
    border-bottom: none;
	margin-bottom: 25px;
}

@media screen and (max-width: 38em){
.c-page-subject-inner02 {
	margin-bottom: 0;
}
}

/*.c-page-subject-inner::before {
	content: '';
	width: 200px;
	height: 7px;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background-color: #0366ac;
}*/
.c-page-subject--txt {
	margin-bottom: 0;
	font-size: 1.625rem;
	font-weight: 600;
	
	letter-spacing: .1em;
}
.c-page-subject--txt02 {
	overflow: hidden;
    text-align: center;
	color:#00a796;
	font-size:1.5rem;
    max-width: 1200px;
    margin: 0 auto;
	font-weight: 400;
}

@media screen and (max-width: 38em){
.c-page-subject--txt02 {
	font-size:1.125rem;
}
}

.c-page-subject--txt02 span {
    display: inline-block;
    padding: 0 1em;
    position: relative;
}

.c-page-subject--txt02 span:before,
.c-page-subject--txt02 span:after {
    border-top: 2px solid #00a796;
    content: "";
    position: absolute;
    top: 50%;
    width: 99em;
}

.c-page-subject--txt02 span:before {
    right: 100%;
}

.c-page-subject--txt02 span:after {
    left: 100%;
}

@media screen and (max-width:38em) {
	.c-page-subject-inner {
		padding: 8% 0 6%;
	}
	.c-page-subject--txt {
		font-size: calc( ( 20 * 100vw ) / 414 );
	}
}

/* content title
--------------------------------------------- */

/* c-page-headline */
.c-page-headline {
	position: relative;
	border-bottom: 6px solid #8d8d8d;
}
.c-page-headline::before {
	content: '';
	width: 60px;
	height: 1px;
	border-bottom: 6px solid #fffd70;
	position: absolute;
	left: 0;
	bottom: -6px;
}
.c-page-headline--txt {
	font-size: 1.5rem;
	padding: 12px;
	margin-bottom: 0;
}

@media screen and (max-width:38em) {
	.c-page-headline--txt {
		font-size: calc( ( 22 * 100vw ) / 414 );
		padding: 3%;
	}
}


/* c-page-subheading */
.c-page-subheading {
	margin-bottom: 40px;
	border-bottom: 1px solid #adadad;
}
.c-page-subheading--mgn {
	margin-top: 50px;
	margin-bottom: 40px;
	border-bottom: 1px solid #adadad;
}
.c-page-subheading--noline {
	margin-bottom: 20px;
}
.c-page-subheading--txt,
.c-page-subheading--txt2 {
	font-size: 1.25rem;
	font-weight: 500;
	padding-bottom: 12px;
	padding-left: 50px;
	margin-bottom: 0;
	position: relative;
}
.c-page-subheading--txt2 {
	padding-left: 0;
}
.c-page-subheading--txt::before {
	content: '';
	width: 30px;
	height: 6px;
	background-color: #fffd70;
	position: absolute;
	left: 0;
	top: calc( 50% - 8px );
}

@media screen and (max-width:38em) {
	.c-page-subheading--txt {
		font-size: calc( ( 18 * 100vw ) / 414 );
		padding-bottom: 4%;
		padding-left: 32px;
	}
	.c-page-subheading--txt::before {
		width: 20px;
	}
}



/** -------------------------------- **
	List
*** ----------------------------------------------------------------- ***/
.c-check-lists li {
	list-style: none;
	position: relative;
	margin-top: 14px;
}
.c-check-lists li::before {
	content: '';
	width: 24px;
	height: 20px;
	position: absolute;
	left: -30px;
	top: 50%;
	transform: translateY(-50%);
	background: resolve('common/icon-check.svg') center 10% no-repeat;
	background-size: contain;
}

.c-indent-lists {
	padding-left: 0;
}
.c-indent-lists li {
	text-indent: -1rem;
	padding-left: 1rem;
	margin-top: 10px;
	list-style: none;
}

/** -------------------------------- **
	Img float
*** ----------------------------------------------------------------- ***/
.c-floatL--img {
	float: left;
	margin: 0 20px 20px 0;
	text-align: center;
	font-size: 0.812rem;
}
.c-floatR--img {
	float: right;
	margin: 0 0 20px 20px;
	text-align: center;
	font-size: 0.812rem;
}
.c-floatL--img img,
.c-floatR--img img {
	margin: 0 0 10px;
}

@media screen and (max-width:38em) {
	.c-floatL--img,
	.c-floatR--img {
		float: none;
		margin: 0 auto 8%;
	}
}


/** -------------------------------- **
	Table
*** ----------------------------------------------------------------- ***/

/*スクロール*/
@media screen and (max-width:38em) {
	.tbl-scroll {
		overflow-x: auto;
		white-space: nowrap;
	}

}


/* .c-table--nostyle
--------------------------------------------- */
.c-table--nostyle {
	table-layout: fixed;
}
.c-table--nostyle th,
.c-table--nostyle td {
	font-size: 1rem;
	font-weight: 350;
	padding: 20px;
	vertical-align: top;
}
.c-table--nostyle th {
	width: 40%;
}


/* .c-table--rowcolor
--------------------------------------------- */
.c-table--rowcolor {
	width: 100%;
	table-layout: fixed;
}
.c-table--rowcolor th,
.c-table--rowcolor td {
	font-size: 0.875rem;
	font-weight: 350;
	padding: 8px 20px;
}
.c-table--rowcolor th {
	width: 40%;
}
.c-table--rowcolor tr:nth-child(odd) {
	background-color: #efefef;
}
.c-table--rowcolor.c-table--rowblue tr:nth-child(odd) {
	background-color: #e8f5ff;
}


/* .c-table--tophead
--------------------------------------------- */
.c-table--tophead {
	width: 100%;
	table-layout: fixed;
}
.c-table--tophead th,
.c-table--tophead td {
	font-size: 0.875rem;
	font-weight: 700;
	padding: 12px;
}
.c-table--tophead th {
	text-align: center;
}
.c-table--tophead th:first-child {
	width: 22%;
	text-align: center;
}
.c-table--tophead td {
	border-bottom: 1px solid #8d8d8d;
}
.c-table--tophead td:first-child {
	font-size: 1rem;
}

.c-table--tophead thead {
	background: #efefef;
}



/* .c-table--line
--------------------------------------------- */
.c-table--line {
	width: 100%;
	table-layout: fixed;
}
.c-table--line th,
.c-table--line td {
	font-size: 0.875rem;
	font-weight: 350;
	padding: 8px 5px;
}
.c-table--line th {
	width: 40%;
}
.c-table--line tr:not(:first-child) {
	border-top: 1px solid #adadad;
}
.c-table--line dl {
	margin-bottom: 0;
}
.c-table--line dt,
.c-table--line dd {
	font-weight: 350;
	margin-bottom: 0;
}
.c-table--line dt {
	float: left;
}
.c-table--line dd {
	float: right;
	text-align: right;
}


/** -------------------------------- **
	Form
*** ----------------------------------------------------------------- ***/
.form-items {
	max-width: 70%;
	margin: 0 auto;
}
.form-items dt {
	margin-bottom: 10px;
	font-size: 1.25rem;
	font-weight: 500;
	padding-left: 40px;
	position: relative;
}
.form-items dt::before {
	content: '';
	width: 30px;
	height: 3px;
	background-color: #fffd70;
	position: absolute;
	left: 0;
	top: calc( 50% - 2px );
}
.form-items dd {
	margin-bottom: 20px;
}
.mw_wp_form_confirm .form-items dd {
	margin-bottom: 40px;
	padding-left: 40px;
}

.form-items dt span {
	font-size: 0.812rem;
	margin-left: 20px;
}
.form-items .error {
	display: block;
	margin-top: 8px;
}

.form-items input,
.form-items textarea,
.form-items select {
	width: 100%;
	padding: 12px;
	font-size: 1rem;
}

@media screen and (max-width:38em) {
	.form-items {
		max-width: 100%;
	}
}


/** -------------------------------- **
	grid
*** ----------------------------------------------------------------- ***/

.c-grid {
	display: flex;
	flex-wrap: wrap;
	padding-left: 0;
}

.c-grid--mgn {
	display: flex;
	flex-wrap: wrap;
	padding-left: 0;
	margin-left: -1.6%;
	margin-right: -1.6%;
}

.c-grid-items,
.c-grid-items--mgn {
	flex-grow: 0;
	flex-shrink: 0;
	flex-basis: 100%;
	list-style: none;
}
.c-grid-items--mgn {
	padding-left: 1.6%;
	padding-right: 1.6%;
}

/*垂直中央*/
.c-grid-middle {
	align-self: center;
}
.c-grid-middle--items {
	align-items: center;
}
/*左右中央*/
.c-grid-center {
	justify-content: center;
}


.c-grid-col1--pc {
	max-width: 100%;
	flex-basis: 100%;
}
.c-grid-col2--pc {
	max-width: 50%;
	flex-basis: 50%;
}
.c-grid-col3--pc {
	max-width: 33.3333%;
	flex-basis: 33.3333%;
}
.c-grid-col3-2--pc {
	max-width: 66.666%;
	flex-basis: 66.666%;
}
.c-grid-col4--pc {
	max-width: 25%;
	flex-basis: 25%;
}
.c-grid-col4-2--pc {
	max-width: 50%;
	flex-basis: 50%;
}
.c-grid-col4-3--pc {
	max-width: 75%;
	flex-basis: 75%;
}
.c-grid-col5--pc {
	max-width: 20%;
	flex-basis: 20%;
}

@media screen and (max-width:38em) {
	.c-grid-col1--sp {
		max-width: 100%;
		flex-basis: 100%;
	}
	.c-grid-col2--sp {
		max-width: 50%;
		flex-basis: 50%;
	}
	.c-grid-col3--sp {
		max-width: 33.3333%;
		flex-basis: 33.3333%;
	}
	.c-grid-col3-2--sp {
		max-width: 66.666%;
		flex-basis: 66.666%;
	}
	.c-grid-col4--sp {
		max-width: 25%;
		flex-basis: 25%;
	}
	.c-grid-col4-2--sp {
		max-width: 50%;
		flex-basis: 50%;
	}
	.c-grid-col5--sp {
		max-width: 20%;
		flex-basis: 20%;
	}
}


/* card layout */
.c-card--img {
	position: relative;
}
.c-card--img .c-card--notice {
	font-size: 0.75rem;
	padding: 3px;
	text-align: center;
	position: absolute;
	left: -1rem;
	top: 8%;
	z-index: 1;
}

.c-card--conts {
	margin-bottom: 40px;
}
.c-card--subtitle {
	font-size: 1.125rem;
	font-weight: 500;
	margin: 10px 0 0;
}
.c-card--subtxt {
	font-size: 0.937rem;
	margin: 0;
}

.c-card--labels {
	margin: 18px 0 0;
	padding: 10px 0 0;
	border-bottom: 1px solid #adadad;
	border-top: 1px solid #adadad;
}

/*物流センター　ラベル*/
.c-card--labels ul {
	margin-bottom: 0;
	list-style: none;
}
.c-card--labels li {
	font-size: 0.75rem;
	padding: 5px 10px;
	margin-left: 10px;
	margin-bottom: 10px;
	border: 1px solid #adadad;
}
.c-card--labels .color--dry {
	color: #05a001;
	border: 1px solid #05a001;
}
.c-card--labels .color--reefer {
	color: #0366ac;
	border: 1px solid #0366ac;
}
.c-card--labels .color--frozen {
	color: #309ce8;
	border: 1px solid #309ce8;
}

/*船舶紹介　航路*/
.c-card--labels dt {
	float: left;
	width: 14%;
	font-weight: 350;
	text-align: center;
}
.c-card--labels dd {
	float: left;
	width: 86%;
	margin-bottom: 10px;
	font-size: 0.75rem;
	font-weight: 350;
}
.c-card--labels dd span {
	display: inline-block;
	width: 94px;
	padding: 2px;
	margin-left: 5px;
	font-size: 0.75rem;
	text-align: center;
}


.c-card--text {
	font-size: 0.875rem;
	line-height: 2.0;
	margin-top: 10px;
}


@media screen and (max-width:38em) {
	.c-card--labels dt {
		float: none;
	}
	.c-card--labels dd {
		float: none;
		width: 100%;
		font-size: calc( ( 14 * 100vw ) / 414 );
	}
	.c-card--labels dd span {
		width: 77px;
		margin-left: 5px;
		margin-top: 5px;
		font-size: calc( ( 10 * 100vw ) / 414 );
	}
}

/** -------------------------------- **
	c-flow
*** ----------------------------------------------------------------- ***/

.c-flow-tit {
	padding: 10px;
	margin-bottom: 40px;
	font-size: 1.25rem;
	text-align: center;
	border: 2px solid #000;
	position: relative;
}
.c-flow-tit::before {
	display: block;
	content: '';
	width: 19px;
	height: 14px;
	background: resolve('common/balloon-arr-btm.png') center no-repeat;
	background-size: contain;
	position: absolute;
	bottom: -14px;
	left: 50%;
	transform: translateX(-50%);
}

.c-flow-lists {
	padding-left: 60px;
	list-style: none;
	counter-reset: number 0;
}
.c-flow-lists li {
	padding-bottom: 60px;
	position: relative;
}
.c-flow-lists li::after {
	counter-increment: number 1;
	content:  "0" counter(number);
	width: 44px;
	padding: 9px 10px 10px;
	font-size: 1rem;
	text-align: center;
	color: #fff;
	background: #000;
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: -60px;
}

.c-flow-lists li:not(:last-child)::before {
	content: '';
	width: 1px;
	height: 100%;
	border-left: 1px solid #000;
	position: absolute;
	top: 0;
	left: -38px;
}


/** -------------------------------- **
	tabs-nav
*** ----------------------------------------------------------------- ***/

.tabs-nav {
	padding-left: 0;
	text-align: center;
}
.tabs-nav .tabs-nav-list {
	width: 100px;
	display: inline-block;
	margin: 10px 5px;
}

.tabs-nav .tabs-btn {
	color: #fff;
	font-size: 0.812rem;
	padding: 5px;
	border: 1px solid #0366ac;
}
.tabs-nav .tabs-btn.active,
.tabs-nav .tabs-btn:hover {
	color: #0366ac;
	border: 1px solid #0366ac;
	background: #fff;
}

/*sec tabs*/
.c-tabs-box {
	padding: 20px 10px;
	margin-bottom: 2% !important;
	.tabs-nav {
		margin-bottom: 0;
	}
	.tabs-nav .tabs-nav-list {
		width: auto;
		max-width: 150px;
		margin: 0 10px;
	}
	.tabs-nav .tabs-btn {
		font-size: 1rem;
		padding: 10px 20px;
	}
}

@media print, screen and (max-width:64em) {
	.c-tabs-box {
		.tabs-nav .tabs-nav-list {
			width: 31%;
			max-width: 100%;
			margin: 1%;
		}
	}
}

@media screen and (max-width:38em) {
	.c-tabs-box {
		.tabs-nav .tabs-nav-list {
			width: 47%;
			margin: 1%;
		}
		.tabs-nav .tabs-btn {
			font-size: calc( ( 16 * 100vw ) / 414 );
		}
	}
}


/* tabs-panel */
.tabs-panel {
	display: none;
	transition: all .3s;
}
.tabs-panel.current {
	display: block;
}


/** -------------------------------- **
	breadcrumbs
*** ----------------------------------------------------------------- ***/
.breadcrumbs-lists {
	background: #f3f3f3;
}
.breadcrumbs-lists ul {
	padding-left: 0;
	list-style: none;
}
.breadcrumbs-lists li {
	display: inline-block;
	vertical-align: middle;
	padding: 5px 0;
	font-size: 0.812rem;
	font-weight: 350;
	position: relative;
}
.breadcrumbs-lists li:not(:last-child)::after {
	display: inline-block;
	vertical-align: middle;
	content: '＞';
	margin: 0 10px;
}


/** -------------------------------- **
	c-pagenation
*** ----------------------------------------------------------------- ***/
.c-pager-lists {
	padding-left: 0;
	list-style: none;
	text-align: center;
}
.c-pager-lists li {
	display: inline-block;
	vertical-align: middle;
}
.c-pager-lists li a {
	display: block;
	padding: 5px 10px;
	margin: 0 5px;
	font-size: 0.812rem;
	font-weight: 350;
	color: #2a2a2a;
	border: 1px solid #2a2a2a;
	background: #fff;
	transition: all .3s;
}
.c-pager-lists li .c-pager-lists--ac {
	color: #fff;
	border: 1px solid #0366ac;
	background: #0366ac;
}
.c-pager-lists li .c-pager-lists--arr {
	color: #2a2a2a;
	font-size: 01.125rem;
	border: none;
	background: none;
}
.c-pager-lists li a:hover {
	color: #fff;
	border: 1px solid #0366ac;
	background: #0366ac;
}
.c-pager-lists li .c-pager-lists--arr:hover {
	color: #0366ac;
	border: none;
	background: none;
}




/** -------------------------------- **
	c-sec-conts-nav
*** ----------------------------------------------------------------- ***/
.c-sec-conts-nav {
	/*margin: 80px 0;*/
	padding: 40px 0;
	background-color: #f3f3f3;
}

@media screen and (max-width:38em) {
	.c-sec-conts-nav {
		margin: 8% 0 0;
		padding: 10% 0;
	}
}

.c-link-column {
	padding: 10px 20px;
	margin-bottom: 20px;
	border-top: 1px solid #8d8d8d;
	border-bottom: 1px solid #8d8d8d;
}

.c-link-prev {
	padding: 14px 30px 14px 0;
	margin-bottom: 0;
}
.c-link-prev a {
	letter-spacing: .2rem;
	font-size: 1.125rem;
	position: relative;
}
.c-link-prev a::before {
	display: inline-block;
	content: '＜';
	font-size: 1.125rem;
	margin-right: 20px;
}
.c-sec-conts-nav--tit {
	padding: 14px 30px;
	margin-bottom: 0;
	font-size: 1.25rem;
	letter-spacing: .2rem;
	font-weight: 700;
	border-left: 1px solid #8d8d8d;
}

.c-sec-conts-nav ul {
	padding-left: 20px;
	padding-right: 20px;
}
.c-sec-conts-nav li {
	margin-top: 30px;
	padding-left: 16px;
	position: relative;
}
.c-sec-conts-nav li::before {
	display: inline-block;
	content: '>';
	font-size: 1rem;
	position: absolute;
	left: 0;
}
.c-sec-conts-nav li a {
	font-size: 1rem;
}

@media screen and (max-width:38em) {
	.c-link-prev {
		padding: 2% 0;
	}
	.c-link-prev a {
		font-size: calc( ( 20 * 100vw ) / 414 );
	}
	.c-sec-conts-nav ul {
		padding-left: 0;
		padding-right: 0;
	}
}


/** -------------------------------- **
	c-page-contact
*** ----------------------------------------------------------------- ***/
.c-page-contact {
	/*max-width: 940px;*/
	max-width: 400px;
	margin: 60px auto 0;
	padding: 40px 40px 30px;
	text-align: center;
}
.c-page-contact--tit {
	font-size: 1.125rem;
	font-weight: 500;
	margin-bottom: 20px;
}
.c-page-contact dt,
.c-page-contact dd {
	font-size: 1.125rem;
	font-weight: 500;
	margin-bottom: 0;
}
.c-page-contact dt {
	max-width: 25%;
}
.c-page-contact dd:nth-child(2) {
	max-width: 38%;
	flex-basis: 38%;
}
.c-page-contact dd:nth-child(3) {
	max-width: 25%;
	flex-basis: 25%;
}
.c-page-contact dd.c-page-contact--btn {
	max-width: 40%;
	flex-basis: 40%;
}
.c-page-contact dd.c-page-contact--btn p {
	margin-bottom: 0;
}
.c-page-contact .c-page-contact--tel {
	display: inline-block;
	vertical-align: -8px;
	line-height: 1;
	color: #0366ac;
	font-size: 2.375rem;
	font-weight: 500;
	margin-left: 10px;
}

@media screen and (max-width:38em) {
	.c-page-contact {
		margin: 8% auto 0;
		padding: 4%;
	}
	.c-page-contact dt {
		max-width: 100%;
		text-align: left;
	}
	.c-page-contact dd {
		margin-top: 2%;
	}
	.c-page-contact dd:nth-child(2) {
		max-width: 100%;
		flex-basis: 100%;
		text-align: left;
	}
	.c-page-contact dd:nth-child(3) {
		max-width: 100%;
		flex-basis: 100%;
		text-align: left;
	}
	.c-page-contact dd.c-page-contact--btn {
		text-align: center;
	}
	.c-page-contact .c-page-contact--tel {
		font-size: calc( ( 48 * 100vw ) / 414 );
	}
}


/* ==========================================================================
	Plugin
=========================================================================== */

/* 共通本体 */
.gallery--wrap {
	position: relative;
	padding: 60px 0 0;
	margin-top: 2%;
}
.gallery--slide {
	max-width: 1000px;
	padding: 0;
	margin: 40px auto 60px;
}
.gallery--items {
	vertical-align: bottom;
}

/* thumbnail */
.gallery--slide-thumb {
	max-width: 1000px;
	padding: 0;
	margin: 40px auto 60px;
}
.gallery--items-thumb {
	padding: 0 10px;
	vertical-align: bottom;
}

@media screen and (max-width:56.25em) {
		.gallery--slide {
		margin: 4% auto 0;
	}
	.gallery--wrap {
		padding: 4% 0 0;
	}
	.gallery--slide-thumb {
		margin: 4% auto;
	}
	.gallery--items-thumb {
		padding: 0 1%;

	}
}


/* Arrows */
.slick-prev,
.slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    display: block;
    width: 40px;
    height: 76px;
    padding: 0;
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
    opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
    opacity: .25;
}

.slick-prev {
		left: 20px;
		z-index: 1;
}
.slick-prev:before {
	display: block;
	width: 40px;
	height: 76px;
	content: '';
	transform: rotate(180deg);
	background: resolve('common/icon-arr-02.svg') center no-repeat;
	background-size: contain;
}

.slick-next {
    right: 20px;
}
.slick-next:before {
	display: block;
	width: 40px;
	height: 76px;
	content: '';
	background: resolve('common/icon-arr-02.svg') center no-repeat;
	background-size: contain;
}

@media print, screen and (max-width:64em) {
	.slick-prev {
		left: 10px;
		width: 20px;
	}
	.slick-next {
		right: 10px;
		width: 20px;
	}
	.slick-prev:before,
	.slick-next:before {
		width: 20px;
		height: 76px;
	}
}

@media screen and (max-width:56.25em) {
	.slick-next, .slick-prev {
		top: 35%;
	}
}

@media screen and (max-width:38em) {
	.slick-prev {
		left: 10px;
		width: 20px;
	}
	.slick-next {
		right: 10px;
		width: 20px;
	}
	.slick-next, .slick-prev {
		top: 45%;
	}
	.slick-prev:before,
	.slick-next:before {
		width: 20px;
		height: 76px;
	}
}

/* Modal */
.modal-column {
	display: none;
}

@media screen and (max-width:38em) {
	.modaal-content-container {
		padding: 14px !important;
	}

	.modaal-content-container .c-table--tophead {
    border-top: 1px solid #8d8d8d;
	}
	.modaal-content-container .c-table--tophead thead {
		display: none;
	}
	.modaal-content-container .c-table--tophead tr {
		display: block;
		padding-bottom: 12px;
    border-bottom: 1px solid #8d8d8d;
	}
	.modaal-content-container .c-table--tophead th,
	.modaal-content-container .c-table--tophead td {
		display: block;
		width: 100%;
		border: none;
		padding: 12px 12px 0;
	}
	.modaal-content-container .c-table--tophead th {
		padding: 12px;
		background: #f3f3f3;
	}
}

/* Accordion */
.js-acd {
	cursor: pointer;
}
.acd-body {
	display: none;
	animation: acdBodyClose .6s;
}
.acd-body.acd-body-open {
	display: block;
	animation: acdBodyOpen .6s;
}

@keyframes acdBodyOpen {
	from{
			opacity: 0;
	}
	to{
			opacity: 1;
	}
}

@keyframes acdBodyClose {
	from{
		opacity: 1;
	}
	to{
		opacity: 0;
	}
}
