@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@300;400;500;600;700;800;900&family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap');

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

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;
}
/* HTML5 display-role reset for older browsers */
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,
q:before, q:after {
	content: '';
	content: none;
}
/* table {
	border-collapse: collapse;
	border-spacing: 0;
} */

img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/*============================================================================
　base
*============================================================================*/
html {
	font-size: 62.5%;
	height: 100%;
}
body {
	/* min-width: 1130px; */
	font-size: 1.4rem;
	color: #003F77;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
	line-height: 2.0;
	letter-spacing: 1.4px;
	animation: fadeIn 2s ease 0s 1 normal;
	-webkit-animation: fadeIn 2s ease 0s 1 normal;
}
body.is-fixed {
  overflow: hidden;
}
@media screen and (max-width: 767px) {
	body {
		min-width: auto;
	}
}


@keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}



/*============================================================================
 レスポンシブ調整：PC版・SP版表示調整
*============================================================================*/
/* display */
@media screen and (min-width: 768px) {
  .view-pc {
    display: block;
  }
  .view-pci {
    display: inline-block;
  }
  .view-sp,
  .view-spi {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .view-pc,
  .view-pci {
    display: none;
  }
  .view-sp {
    display: block;
  }
  .view-spi {
    display: inline-block;
  }
}

/* link */
a {
	color: #003F77;
  -webkit-transition: all .3s;
  transition: all .3s;
}
@media screen and (min-width: 768px) {
  .link-phone[href^="tel:"] {
    pointer-events: none;
    text-decoration: none;
		color: #003F77;
  }
	a:hover {
		opacity: .8;
	}
}
@media screen and (max-width: 767px) {
  *:focus {
    outline: none;
  }
  .link-phone[href^="tel:"] {
    pointer-events:auto;
    text-decoration: underline;
  }
}

/*============================================================================
　共通
*============================================================================*/
/* inview */
.js-fade {
	opacity: 0;
	visibility: hidden;
	transform: translateY(30px);
	transition: opacity 1s,visibility 1s, transform 1s;
}
.inview {
	opacity: 1;
	visibility: visible;
	transform: translateY(0px);
}

/* layout */
.container {
	max-width: 1100px;
	margin: 0 auto;
}
.post,
.page {
	margin-bottom: 0;
}
@media screen and (max-width: 767px) {
	.container {
		width: 100%;
		min-width: auto;
		padding: 0;
	}
}
.l-main {
	padding: 100px 0;
}
.l-main__inner {
	padding: 0 20px;
}
@media screen and (max-width: 767px) {
	.l-main {
		padding: 60px 0;
	}
}

/* l-page-catch */
.l-page-catch {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 330px;
	padding: 25px 20px;
	background-image: url(../img/common/bg_catch.png);
	background-position: center;
	background-size: 1400px auto;
	background-repeat: repeat;
	font-weight: bold;
	color: #fff;
	text-align: center;
}
.l-page-catch__heading .sub-title {
	position: relative;
	padding-left: 16px;
	font-size: 1.2rem;
	text-transform:capitalize;
	letter-spacing: 1.2px;
}
.l-page-catch__heading .sub-title::before {
	position: absolute;
	top: 50%;
	left: 0;
	content: "";
	width: 6px;
	height: 6px;
	margin-top: -3px;
	background-color: #fff;
	border-radius: 6px;
}
.l-page-catch__heading .title {
	display: block;
	margin-top: 20px;
	padding: 15px 0;
	border-top: 1px solid rgba(255, 255, 255, .2);
	border-bottom: 1px solid rgba(255, 255, 255, .2);
	font-size: 3.0rem;
	letter-spacing: 3px;
}
@media screen and (max-width: 767px) {
	.l-page-catch {
		height: 150px;
		padding: 20px;
	}
	.l-page-catch__heading .title {
		margin-top: 10px;
		padding: 10px 0;
		font-size: 2.0rem;
	}
}

/* l-page-bottom */
.l-page-bottom {
	padding: 0 0 60px;
}
.l-page-bottom.border-top {
	padding-top: 55px;
	border-top: 1px solid #D1DECD;
}
.l-page-bottom .btn-wrapper {
	width: 400px;
	margin: 0 auto;
}
.l-page-bottom .link-wrapper {
	text-align: center;
}
@media screen and (max-width: 767px) {
	.l-page-bottom .btn-wrapper {
		width: 100%;
	}
}

/* text block */
.text-block {
	margin-bottom: 150px;
}
.text-block__inner {
	display: flex;
	margin-bottom: 40px;
}
.text-block__inner.img-left {
	flex-direction: row-reverse;
}
.text-block__inner.img-left .text-block__image {
	margin: 0 60px 0 0;
}
.text-block__text-box {
	flex: 1;
}
.text-block__text-box p {
	margin-bottom: 2em;
	line-height: 2.4;
}
.text-block__text-box p:last-of-type {
	margin-bottom: 0;
}
.text-block__image {
	width: 49%;
	min-width: 300px;
	margin-left: 60px;
}
.text-block ul:last-of-type,
.text-block ol:last-of-type {
	margin-bottom: 0;
}
@media screen and (max-width: 767px) {
	.text-block {
		margin-bottom: 60px;
	}
	.text-block__inner {
		display: flex;
		flex-direction: column-reverse;
		margin-bottom: 0;
	}
	.text-block__text-box {
		margin-bottom: 0;
	}
	.text-block__image {
		width: 100%;
		min-width: auto;
		margin-left: 0;
		margin: 0 0 30px;
		text-align: center;
	}
	.text-block__image img {
		width: 100%;
		max-width: 400px;
	}
	.text-block__inner.img-left {
		flex-direction: column-reverse;
	}
	.text-block__inner.img-left .text-block__image {
		margin: 0 0 30px;
	}
}

/* page-lead */
.page-lead {
	margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
	.page-lead {
		margin-bottom: 30px;
	}
}

/* title */
.cmn-title {
	margin-bottom: 40px;
	padding: 20px 0;
	border-top: 2px solid #003F77;
	border-bottom: 2px dotted #003F77;
	font-size: 3.0rem;
	font-weight: bold;
	text-align: center;
	letter-spacing: 3px;
	line-height: 1.5;
}
.cmn-title02 {
	padding: 15px 30px;
	background-color: #003F77;
	font-size: 2.4rem;
	font-weight: bold;
	color: #fff;
	border-radius: 4px;
	letter-spacing: 2.4px;
	line-height: 1.5;
}
.cmn-title02.icon-sake {
	padding-left: 75px;
	background-image: url(../img/item/icon_sake.svg);
	background-position: 30px center;
	background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
	.cmn-title {
		margin-bottom: 30px;
    font-size: 2.0rem;
	}
	.cmn-title02 {
		font-size: 2.0rem;
	}
	.cmn-title02 .icon-sake {
    padding-left: 60px;
    background-position: 20px center;
	}
}

/* font style */
.fnt-color01 {
	color: #F7E61B;
}
.f-color_red {
	color: #FF0000;
}
.f-color_blue {
	color: #0700FF;
}
.f-color_black {
	color: #000;
}
.txt-nowrap {
	white-space: nowrap;
}
.f-mincho {
	font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
}

/* align */
.txt-align_r {
	text-align: right;
}
@media screen and (min-width: 768px) {
	.align-c_pc {
		text-align: center;
	}
}

/* margin */
.mb00 {
	margin-bottom: 0;
}
.mt15 {
	margin-top: 15px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.mb60 {
	margin-bottom: 60px !important;
}

/* indent */
.indent-1em {
	padding-left: 1em;
}
.indent-2em {
	padding-left: 2em;
}
@media screen and (min-width: 768px) {
	.indent-2em_pc {
		padding-left: 2em;
	}
}
@media screen and (max-width: 767px) {
	.indent-1em_sp {
		padding-left: 1em;
	}
}

/* btn */
.btn {
	position: relative;
	display: inline-block;
	min-width: 200px;
	padding: 15px 26px;
	background-color: #fff;
	border: 1px solid #003F77;
	font-weight: bold;
	color: #003F77;
	text-align: center;
	text-decoration: none;
	line-height: 1.6;
	border-radius: 4px;
}
.btn span {
	display: inline-block;
}
.btn.icon-arrow_r {
	padding-right: 55px;
	text-align: left;
}
.btn.icon-circle_r span {
	position: relative;
	padding-right: 25px;
}
.btn.icon-circle_r span::after {
	position: absolute;
	top: 50%;
	right: 0;
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 6px;
	background-color: #003F77;
	transform: translateY(-50%);
}
.btn.icon-dl span {
	padding-left: 25px;
	background-image: url(../img/common/icon_dl.png);
	background-position: 0 center;
	background-size: 14px auto;
	background-repeat: no-repeat;		
}
.btn.icon-format span {
	padding-right: 22px;
	background-image: url(../img/common/icon_blank.png);
	background-position: right center;
	background-size: 13px auto;
	background-repeat: no-repeat;		
}
.btn.icon-mail span {
	padding-left: 30px;
	background-image: url(../img/common/icon_mail.svg);
	background-position: left center;
	background-size: 20px auto;
	background-repeat: no-repeat;		
}
.btn.btn-large,
.btn-cv.btn-large {
	position: relative;
	padding: 40px 50px;
	font-size: 2.0rem;
	letter-spacing: 2px;
}
.btn-cv {
	display: inline-block;
	padding: 20px 60px;
	background-color: #E67762;
	border-radius: 4px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	text-decoration: none;
}
.btn-cv.icon-cart span {
	display: inline-block;
	padding-left: 30px;
	background-image: url(../img/common/icon_cart.svg);
	background-position: left center;
	background-size: 20px auto;
	background-repeat: no-repeat;
}
.btn-cv.btn-large.icon-cart span {
	padding-left: 40px;
	background-size: 30px auto;
}
.btn-cv.icon-exlnk {
	background-image: url(../img/common/icon_exlink.svg);
	background-position: right 20px center;
	background-repeat: no-repeat;
	background-size:  15px auto;
}
.btn-cv.btn-large.icon-exlnk {
	background-position: right 30px center;
	background-size:  20px auto;
}
.btn.btn-thick.icon-arrow::after {
	position: absolute;
	top: 50%;
	right: 20px;
	content: "";
	width: 24px;
	height: 24px;
	margin-top: -12px;
	background-image: url(../img/common/icon_arrow_right-wht.png);
	background-position: right center;
	background-size: 24px auto;
	background-repeat: no-repeat;		
}
.btn.btn-thick span {
	position: relative;
}
.btn.btn-thick span::before {
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 2px;
	background-color: #fff;
}
.btn02 {
	position: relative;
	display: inline-block;
	min-width: 200px;
	padding: 15px 26px;
	background-color: #E67762;
	border: 1px solid #E67762;
	font-weight: bold;
	color: #fff;
	text-align: center;
	text-decoration: none;
	line-height: 1.6;
	border-radius: 4px;
}
.btn02.bg-pattern {
	background-image: url(../img/common/bg_btn.png);
	background-position: center;
	background-size: contain;
	background-repeat: repeat;		
}
.btn02 span {
	display: inline-block;
}
.btn02.icon-arrow_r {
	padding-right: 55px;
	text-align: left;
}
.btn02.icon-circle_r span {
	position: relative;
	padding-right: 25px;
}
.btn02.icon-circle_r span::after {
	position: absolute;
	top: 50%;
	right: 0;
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 6px;
	background-color: #fff;
	transform: translateY(-50%);
}
.btn-wrapper {
	text-align: center;
}
.btn-wrapper.btn-left {
	text-align: left;
}
.definition-list + .btn-wrapper {
	margin-top: 20px;
}
.btns {
	display: flex;
}
.btns .btn-wrapper {
	margin-right: 20px;
}
.btns .btn-wrapper:last-of-type {
	margin-right: 0;
}
@media screen and (max-width: 767px) {
	.btn,
	.btn02 {
		padding: 15px 30px;
	}
	.btn.icon-mail {
		padding-right: 30px;
		padding-left: 30px;
	}
	.btn-cv {
		padding-top: 15px;
		padding-bottom: 15px;
	}
	.btn.btn-large,
	.btn-cv.btn-large {
		padding-top: 20px;
		padding-bottom: 20px;
		font-size: 1.6rem;
	}
	.btns {
		display: block;
	}
	.btns .btn-wrapper {
		margin: 0 0 10px 0;
	}
	.btns .btn-wrapper .btn {
		width: 100%;
	}
	.btns .btn-wrapper:last-of-type {
		margin-bottom: 0;
	}
	.btns .btn {
		padding-right: 20px;
		padding-left: 20px;
	}
	.btns .btn.icon-circle_r span {
		width: 100%;
		padding-right: 15px;
		padding-left: 15px;
	}
}

/* icon */
.icon-exlink::after {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 13px;
	height: 13px;
	margin: -0.2em 0 0 7px;
	background-image: url(../img/common/icon_exlink-blu.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

/* link-text */
.link-text {
	padding: 10px 0;
	font-weight: bold;
	text-decoration: none;
	color: #003F77;
	border-bottom: 1px solid #003F77;
	letter-spacing: 1.4px;
}
.link-text.icon-arrow_l {
	padding-left: 30px;
	background-image: url(../img/common/icon_arrow_left.svg);
	background-position: left center;
	background-size: 12px auto;
	background-repeat: no-repeat;
}
.link-text.icon-arrow_r {
	padding-left: 30px;
	background-image: url(../img/common/icon_arrow_right.svg);
	background-position: left center;
	background-size: 12px auto;
	background-repeat: no-repeat;
}
.link-text span {
	position: relative;
}
.link-text span::before {
	content: "";
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #033884;
}

/* list */
.list01 {
	margin-left: 1.5em;
	list-style: disc;
}
.list01 li {
	position: relative;
}
.list-num {
	margin-left: 1.5em;
	list-style: decimal;
}

/* row list */
.definition-list__item {
	padding: 20px 0;
	border-bottom: 1px solid #D8E1EA;
	line-height: 2.4;
}
.definition-list__item dl {
	display: flex;
}
.definition-list__item dt {
	position: relative;
	width: 180px;
	margin-left: 30px;
	padding: 0 15px 0 30px;
	font-size: 1.4rem;
	font-weight: bold;
}
.definition-list__item dt::before {
	position: absolute;
	top: .9em;
	left: 0;
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 6px;
	background-color: #003F77;
}
.definition-list__item dd {
	flex: 1;
}
.definition-list__item .indent {
	padding-left: 2em;
}
@media screen and (max-width: 767px) {
	.definition-list__item {
		display: block;
	}
	.definition-list__item dl {
		display: block;
	}
	.definition-list__item dt {
		width: 100%;
		margin-left: 0;
		padding: 0 0 0 20px;
	}
}
.table-list {
	border-top: 1px solid #DBDBDB;
}
.table-list__item {
	display: flex;
	padding: 30px 0;
	border-bottom: 1px dashed #003F77;
	text-align: left;
}
.table-list__item > dt {
	width: 220px;
	margin-right: 20px;
	font-weight: bold;
}
.table-list__item dd {
	flex: 1;
}
.table-list__item li dl {
	display: flex;
}
.table-list__item .indent {
	padding-left: 2em;
}
@media screen and (max-width: 767px) {
	.table-list__item {
		display: block;
	}
	.table-list__item > dt {
		width: 100%;
		margin-right: 0;
	}
}

/* pager */
.wp-pagenavi {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 60px;
}
.wp-pagenavi a {
  background-color: #fff;
	color: #0072AD;
	text-decoration: none;
}
.wp-pagenavi a,
.wp-pagenavi span {
  margin: 5px 5px;
	min-width: 50px;
  height: 50px;
	padding: 0 10px;
	border: 1px solid #D8E1EA;
  line-height: 50px;
  border-radius: 5px;
	font-size: 14px;
	color: #003F77;
  text-align: center;
}
.wp-pagenavi .page:hover {
  opacity: 1;
  text-decoration: none;
}
.wp-pagenavi .current {
  color: #fff;
	border-color: #003F77;
  background-color: #003F77;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  position: relative;
  display: block;
	height: 50px;
	font-weight: bold;
	text-decoration: none;
}
.wp-pagenavi .previouspostslink {
  margin: 0 25px 0 0;
	padding: 0 20px;
}
.wp-pagenavi .nextpostslink {
  margin: 0 0 0 25px;
	padding: 0 20px;
}
@media screen and (max-width: 767px) {
	.wp-pagenavi {
		padding: 0 0 60px;
	}
	.wp-pagenavi .previouspostslink,
	.wp-pagenavi .nextpostslink {
    position: absolute;
    bottom: 0;
		margin-top: 5px;
		margin-bottom: 5px;
	}
	.wp-pagenavi .previouspostslink {
		left: 0;
		margin-right: 10px;
  }
  .wp-pagenavi .nextpostslink {
		right: 0;
		margin-left: 10px;
	}
}

/*============================================================================
　ヘッダー
*============================================================================*/
.l-header {
	height: 140px;
}
body.home .l-header {
	height: auto;
}
.l-header__container {
	position: fixed;
	top: 0;
	width: 100%;
	height: 140px;
	/* min-width: 1130px; */
	-webkit-transition: all .1s ease;
  transition: all .1s ease;
	z-index: 20;
}
body.is-fixed .l-header__container {
	height: 100%;
}
.l-header__inner {
	position: relative;
	display: flex;
	align-items: center;
	/* min-width: 1100px; */
	padding: 20px;
	background-color: #fff;
}
body.is-fixed .l-header__inner {
	background-color: #fff !important;
	z-index: 15;
}
body.home .l-header__inner {
	background-color: transparent;
}
.l-nav__inner {
	width: 100%;
	height: 100%;
	padding: 20px;
}
.l-nav__content {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}
.l-nav__image {
	margin-right: 50px;
}
.l-header__logo {
	position: relative;
	width: 247px;
	z-index: 20;
}
.l-header__logo a {
	display: block;
}
.l-header__tools {
	position: relative;
	display: flex;
	align-items: center;
	margin-left: auto;
	z-index: 20;
}
.l-header__cart {
	margin-right: 20px;
}
.btn-cart {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 60px;
	height: 60px;
	background-color: #E67762;
	border-radius: 4px;
}
.l-header__menu_button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	height: 60px;
	margin-left: auto;
	background-color: #fff;
	border: 2px solid #003F77;
	border-radius: 4px;
	z-index: 10;
}
.l-header__menu_button_icon {
	position: relative;
	width: 16px;
	height: 12px;
}
.l-header__menu_button span {
	position: absolute;
	display: block;
	width: 16px;
	height: 2px;
	border-radius: 2px;
	background-color: #003F77;
	transition: .3s ease-in-out;
}
.l-header__menu_button span:nth-child(1) {
	top: 0;
}
.l-header__menu_button span:nth-child(2) {
	top: 5px;
}
.l-header__menu_button span:nth-child(3) {
	bottom: 0;
}
.l-header__menu_button.is-open span:nth-child(1) {
	top: 5px;
	transform: translateY(0px) rotate(-45deg);
}
.l-header__menu_button.is-open span:nth-child(2) {
	opacity: 0;
}
.l-header__menu_button.is-open span:nth-child(3) {
	top: 10px;
	bottom: auto;
	transform: translateY(-5px) rotate(45deg);
}
.l-nav {
	opacity: 0;
	z-index: 10;
	position: fixed;
	top: 140px;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: calc(100% - 140px);
	background-color: #004079;
	background-image: url(../img/common/bg_catch.png);
	background-position: center;
	background-size: 1400px auto;
	background-repeat: repeat;
	pointer-events: none;
	transition: opacity .3s ease, visibility .3s ease;
	z-index: -1;
	overflow: auto
}
.l-nav.is-open {
	opacity: 1;
	pointer-events: auto;
	z-index: 10;
}
.l-nav .btn {
	padding-top: 10px;
	padding-bottom: 10px;
}
.l-nav__list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	width: 288px;
	font-weight: bold;
}
.l-nav__list li {
	margin: 10px;
}
.l-nav__list a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 76px;
	height: 159px;
	padding: 10px;
	background-image: url(../img/common/bg_menu-blu.png);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	font-size: 1.6rem;
	font-weight: bold;
	writing-mode: vertical-rl;
	color: #fff;
	text-decoration: none;
}
.l-nav__list.current-menu-item a::before {
	opacity: 1;
}
@media screen and (min-width: 768px) {
	.l-header.is-scroll .l-header__container {
		background-color: #fff;
    -webkit-box-shadow: 0px 5px 10px 0px rgb(0 0 0 / 12%);
    -ms-box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.12);
    box-shadow: 0px 5px 10px 0px rgb(0 0 0 / 12%);
	}
	.l-header__inner {
		height: 140px;
	}
	.l-header.is-scroll .l-header__container,
	.l-header.is-scroll .l-header__inner {
		height: 100px;
	}
	.l-header.is-scroll .l-nav.is-open {
		top: 100px;
		height: calc(100% - 100px);
	}
	.l-nav__inner {
		display: flex;
		min-height: 500px;
    margin-left: auto;
	}
	.l-header__menu_button:hover,
	.l-header__menu_button:active,
	.l-header__menu_button:focus {
		border-color: #003F77;
	}
	.l-nav__list a:hover {
		background-image: url(../img/common/bg_menu.png);
		color: #003F77;
		opacity: 1;
	}
	.l-nav__list a:hover::before {
		opacity: 1;
	}
}
@media screen and (max-width: 767px) {
	.l-header {
		height: 70px;
	}
	.l-header__container {
		min-width: auto;
		height: 70px;
	}
	.l-header__inner {
		min-width: auto;
		width: 100%;
		padding: 10px;
	}
	.l-header__info {
		max-width: 180px;
		width: calc(100% - 160px);
	}
	.l-header__logo {
		width: 100%;
	}
	.l-header__logo a {
		display: block;
		line-height: 1;
	}
	.l-header__cart {
		margin-right: 15px;
	}
	.btn-cart {
		width: 50px;
		height: 50px;
	}
	.l-header__menu_button {
		width: 50px;
		height: 50px;
	}
	.l-nav {
		top: 70px;
		height: calc(100% - 70px);
	}
	.l-nav__list ul {
		width: 192px;
	}
}

/*============================================================================
　フッター
*============================================================================*/
.l-footer {
	position: relative;
	background-image: url(../img/common/bg_footer.png);
	background-size: 1400px auto;
}
.pagetop {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	height: 60px;
	background-color: #fff;
	box-shadow: 0px 0px 6px #00000029;
	border-radius: 60px;
	cursor: pointer;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	z-index: 10;
}
.l-footer__links {
	padding: 20px;
	background-color: #003F77;
}
.l-footer__links ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.l-footer__links li {
	position: relative;
}
.l-footer__links li::before {
	position: absolute;
	top: 50%;
	content: "";
	width: 1px;
	height: 1em;
	margin-top: -0.5em;
	background-color: #fff;
	z-index: 1;
}
.l-footer__links li:first-of-type::before {
	display: none;
}
.l-footer__links a {
	margin: 0 25px;
	color: #fff;
	text-decoration: none;
}
.l-footer__content {
	padding: 100px 0;
	text-align: center;
}
.l-footer__logo {
	width: 400px;
	margin: 0 auto 60px;
}
.l-footer__bnr {
	display: flex;
	justify-content: center;
	margin-bottom: 45px;
}
.l-footer__bnr .bnr {
	width: 260px;
	margin: 0 10px;
}
.l-footer__bnr .bnr a {
	display: block;
	padding: 15px 10px;
	background-color: #fff;
	border: 1px solid #DDDDDD;
}
.l-footer__bnr .bnr img {
	width: 140px;
}
.l-footer__copylight {
	font-size: 1.0rem;
}
@media screen and (min-width: 768px) {
	.pagetop.is-active:hover {
		opacity: .8;
	}
	.pagetop {
    position: fixed;
    opacity: 0;
    visibility: hidden;
    top: inherit;
    right: 30px;
    bottom: 30px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.pagetop.is-active {
		opacity: 1;
		visibility: visible;
	}
	.pagetop.is-footer-show {
		position: absolute;
		top: -30px;
		bottom: inherit;
	}
}
@media screen and (max-width: 767px) {
	.l-footer {
		padding: 0;
		border-top: 4px solid #003F77;
	}
	.pagetop {
		position: absolute;
    top: -30px;
    right: 20px;
	}
	.l-footer__content {
		display: block;
		padding: 30px 0;
	}
	.l-footer__logo {
		width: 60%;
		margin: 0 auto 30px;
	}
	.l-footer__info {
		justify-content: center;
		margin: 0 0 15px;
	}
}

/*============================================================================
　page
*============================================================================*/
/*-------------------------------
  home
-------------------------------*/
body.home .l-main {
	padding: 0 0 50px;
}
body.home .l-main__inner {
	padding: 0;
}
.section-ttl {
	display: flex;
	align-items: center;
	width: 230px;
	position: relative;
	writing-mode: vertical-rl;
	margin: 0 auto 50px;
}
.section-ttl h2 {
	padding: 0 25px;
	border-right: 1px solid #003F77;
	border-left: 1px solid #003F77;
	font-size: 3.0rem;
	font-weight: bold;
	letter-spacing: 3px;
	color: #003F77;
	line-height: 1.6;
}
.section-ttl .sub-title {
	position: absolute;
	top: 0;
	right: 30px;
	display: flex;
	align-items: center;
}
.section-ttl .sub-title .label {
	display: inline-block;
	margin-bottom: 30px;
	padding: 10px 2px;
	background-color: #003F77;
	font-size: 2.0rem;
	font-weight: bold;
	color: #fff;
	letter-spacing: 6px;
	border-radius: 4px;
}
.section-ttl .sub-title .label span {
	writing-mode: initial;
	letter-spacing: 0;
	line-height: 1.5;
	font-size: 1.8rem;
}
.section-ttl .sub-title .en {
	position: relative;
	padding-top: 16px;
}
.section-ttl .sub-title .en::before {
	position: absolute;
	top: 0;
	left: 50%;
	content: "";
	width: 6px;
	height: 6px;
	margin-left: -3px;
	background-color: #003F77;
	border-radius: 6px;
}
@media screen and (max-width: 767px) {
	.section-ttl {
    flex-direction: column-reverse;
		width: 100%;
		margin-bottom: 40px;
		padding: 0 10px;
		writing-mode: initial;
	}
	.section-ttl h2 {
		padding: 10px 0;
		border: none;
		border-top: 1px solid rgba(0,63,119,.2);
		border-bottom: 1px solid rgba(0,63,119,.2);
		font-size: 2.6rem;
		text-align: center;
		letter-spacing: 3px;
		line-height: 1.3;
	}
	.section-ttl .sub-title {
		display: flex;
    flex-direction: column-reverse;
		position: static;
		margin-bottom: 20px;
	}
	.section-ttl .sub-title .label {
		margin: 15px 0 0;
		padding: 5px 13px;
		font-size: 1.6rem;
		letter-spacing: 5px;
	}
	.section-ttl .sub-title .label span {
		margin-right: 3px;
		font-size: 1.6rem;
		letter-spacing: 1.4px;
	}
	.section-ttl .sub-title .en {
		margin-bottom: 0;
		padding: 0 0 0 16px;
	}
	.section-ttl .sub-title .en::before {
    top: 50%;
    left: 0;
    margin-left: 0;
		transform: translateY(-50%);
	}
}

/* index-mv */
.index-mv {
	position: relative;
	margin-bottom: 200px;
	border-bottom: 4px solid #003F77;
}
.index-mv__inner {
	position: relative;
	/* max-width: 2200px; */
	height: 850px;
	margin: 0 auto;
}
.index-mv__content {
	padding: 160px 20px 20px;
}
.index-mv__catch {
	position: relative;
	display: flex;
	align-content: center;
	justify-content: center;
	height: 100%;
	z-index: 15;
}
.index-mv__catch h1 {
	display: flex;
	flex-direction: column;
	align-items: center;
	writing-mode: vertical-rl;
	font-size: 3.0rem;
	font-weight: bold;
	letter-spacing: 9px;
}
.index-mv__catch h1 .text {
	white-space: nowrap;
}
.index-mv__catch h1 .text span {
	writing-mode: initial;
	font-size: 2.7rem;
	letter-spacing: 0;
	line-height: 1.5;
}
.index-mv__image {
	display: flex;
	align-items: center;
	margin: 0 40px;
}
.index-mv__nav {
	display: flex;
	align-items: center;
	height: 100%;
}
.index-mv__nav ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	width: 192px;
	font-weight: bold;
}
.index-mv__nav li {
	margin: 10px;
}
.index-mv__nav a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 73px;
	height: 153px;
	padding: 10px;
	background-image: url(../img/common/bg_menu.png);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	font-size: 1.6rem;
	font-weight: bold;
	writing-mode: vertical-rl;
	color: #003F77;
	text-decoration: none;
}
.index-mv__bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 850px;
  overflow: hidden;
}
.index-mv__bg::after {
	position: absolute;
	width: 100%;
	height: 100%;
	/* height: 100%; */
	content: "";
	background-color: #fff;
	opacity: .8;
}
.index-mv__slider-wrapper {
	/* width: 2200px;
	height: 2200px; */
}
.index-mv__slider {
	position: absolute;
	/* top: 50%;
	left: 0;
	width: 100%; */
	/* margin-left: -1100px;
	margin-top: -1100px; */
	/* transform: rotate(65deg); */
	z-index: -1;
}
.index-mv__slides {
  display: flex;
  width: 200%;
  -webkit-animation: slide var(--duration, 10s) linear infinite;
          animation: slide var(--duration, 10s) linear infinite;
}
.index-mv__slides.alternate {
  -webkit-animation: slide_alternate var(--duration, 10s) linear infinite;
          animation: slide_alternate var(--duration, 10s) linear infinite;
}
.index-mv__slide {
  flex-basis: 50%;
  display: flex;
  align-items: center;
}
.index-mv__slide div {
  display: block;
  flex-basis: var(--logo-width, 20%);
  /* padding: clamp( 30px, 4vw, 60px ); */
  transition: transform 0.3s;
}
.index-mv__slide div img {
	width: 100%;
	/* transform:rotate(-90deg); */
}
@-webkit-keyframes slide {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes slide {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@-webkit-keyframes slide_alternate {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0%);
  }
}
@keyframes slide_alternate {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0%);
  }
}
@media screen and (min-width: 768px) {
	.index-mv__nav a:hover {
		background-image: url(../img/common/bg_menu-blu.png);
		color: #fff;
		opacity: 1;
	}
}
@media screen and (max-width: 767px) {
	.index-mv {
		margin-bottom: 100px;
	}
	.index-mv__inner {
		height: auto;
		min-height: 500px;
	}
	.index-mv__content {
		height: auto;
		padding: 110px 10px 35px;
	}
	.index-mv__catch {
		flex-direction: column-reverse;
		height: auto;
	}
	.index-mv__catch h1 {
		display: inline-block;
		writing-mode: initial;
		font-size: 2.0rem;
		line-height: 1.6;
		letter-spacing: 7px;
		text-align: center;
	}
	.index-mv__catch h1 .text span {
		font-size: 2.0rem;
		letter-spacing: 1.4px;
		margin-right: 5px;
		line-height: 1.5;
	}
	.index-mv__image {
		width: 62.22%;
		max-width: 280px;
		margin: 0 auto 30px;
	}
	.index-mv__bg {
		height: 100%;
	}
	.index-mv__slide div:nth-child(4),
	.index-mv__slide div:nth-child(5),
	.index-mv__slide div:nth-child(6) {
		display: none;
	}
	.index-mv__slide div {
		flex-basis: 33.33% !important;
	}
}

/* index-concept */
.index-concept {
	padding: 0 20px;
}
.index-concept__content {
	position: relative;
	margin-bottom: 150px;
	background-image: url(../img/item/img_map.png);
	background-position: center top;
	background-repeat: no-repeat;
	background-size:  1100px auto;
	min-height: 1020px;
}
.index-concept .section-ttl .sub-title {
	right: 0;
}
.index-concept__text {
	width: 36.36%;
	margin: 0 auto;
	text-align: center;
}
.index-concept__text p {
	margin-bottom: 2em;
}
.index-concept__text .name {
	margin: 45px 0;
}
.index-concept__text strong {
	font-weight: bold;
}
.img-concept01 {
	position: absolute;
	top: 85px;
	right: 0;
	width: 22.72%;
}
.img-concept02 {
	position: absolute;
	top: 285px;
	left: 0;
	width: 27.27%;
}
.img-concept03 {
	position: absolute;
	top: 640px;
	right: 0;
	width: 30%;
}
.img-concept04 {
	position: absolute;
	bottom: -50px;
	left: 16%;
	width: 18.18%;
}
.img-concept01 img,
.img-concept02 img,
.img-concept03 img,
.img-concept04 img {
	width: 100%;
}
@media screen and (max-width: 767px) {
	.index-concept__content {
		margin-bottom: 100px;
		background-size: 100% auto;
	}
	.index-concept__text {
		width: 100%;
    max-width: 450px;
		margin-bottom: 60px;
		padding: 0 20px;
		text-align: left;
	}
	.index-concept__text .name {
		text-align: center;
	}
	.img-concept01 {
		position: static;
		width: calc(100% + 40px);
		margin: 0 -20px;
	}
}

/* index-item */
.index-item .section-ttl {
	padding-top: 125px;
	background-image: url(../img/index/icon_zenkoku.png);
	background-position: center top;
	background-repeat: no-repeat;
	background-size:  92px auto;
}
.index-item .section-ttl .sub-title {
	top: 125px;
}
.index-item .item-area {
	border-top: none;
	border-bottom: 2px dotted #003F77;
}
.index-item .item-area__block {
	margin-top: -1px;
	margin-bottom: 0;
	border-top: 2px dotted #003F77;
}

/* index-news */
.index-news {
	position: relative;
	margin-bottom: 150px;
	padding-top: 100px;
}
.news-list {
	margin-bottom: 40px;
}
.news-list__item {
	border-bottom: 1px dotted #DBE5EF;
}
.news-list__item:first-of-type {
	padding-top: 0;
	border-top: 1px dotted #DBE5EF;
}
.news-list__item-inner {
	display: flex;
	align-items: center;
	padding: 60px 30px;
	color: #003F77;
	text-decoration: none;
}
.news-list__item .thumbnail {
	display: flex;
	align-content: center;
	max-width: 590px;
	border-right: 2px dotted #003F77;
}
.news-list__item .thumbnail .img {
	max-width: 450px;
	width: 30vw;
	border-radius: 5px;
	overflow: hidden;
}
.news-list__item .posted-on {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 7%;
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.3;
	letter-spacing: 3px;
}
.news-list__item .posted-on span {
	display: block;
	margin-bottom: 5px;
	font-size: 1.4rem;
	letter-spacing: 1.4px;
}
.news-list .post-categories {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 15px !important;
	padding: 0;
}
.news-list .post-categories li {
	margin-right: 10px;
	display: inline-block;
	font-size: 1.2rem;
}
.news-list__item .text-box {
	display: flex;
	justify-content: center;
	flex-direction: column;
	flex: 1;
	padding-right: 90px;
	background-image: url(../img/common/icon_arrow_circle.svg);
	background-position: right center;
	background-repeat: no-repeat;
	margin-left: 40px;
}
.news-list__item .text-box a {
	color: #003F77;
	text-decoration: none;
}
.news-list__item .text-box p {
	font-size: 2.0rem;
	font-weight: bold;
	letter-spacing: 2px;
	line-height: 1.8;
}
@media screen and (min-width: 768px) {
	.news-list__item-inner:hover {
		opacity: 1;
		background-color: #004079;
    background-image: url(../img/common/bg_catch.png);
    background-size: 1400px auto;
    background-repeat: repeat;
		color: #fff;
	}
	.news-list__item .news-list__item-inner:hover .thumbnail {
		border-color: #fff;
	}
	.news-list__item .news-list__item-inner:hover .text-box {
		background-image: url(../img/common/icon_arrow_circle-wht.svg);
	}
}
@media screen and (max-width: 767px) {
	.index-news {
		margin-bottom: 100px;
		padding-top: 90px;
	}
	.news-list {
		margin-bottom: 30px;
	}
	.news-list__item-inner {
		display: block;
		padding: 30px 20px 25px;
	}
	.news-list__item .thumbnail {
		max-width: none;
		border: none;
		margin-bottom: 25px;
	}
	.news-list__item .thumbnail .img {
		width: 60vw;
	}
	.news-list__item .thumbnail img {
		width: 100%;
	}
	.news-list__item .posted-on {
		width: 100px;
		font-size: 2.0rem;
	}
	.news-list__item .posted-on span {
		font-size: 1.2rem;
	}
	.news-list__item .text-box {
		display: block;
		padding-right: 0;
		background: none;
		margin-left: 0;
	}
	.news-list__item .text-box p {
		font-size: 1.6rem;
	}
}

/* index-column */
.index-column {
}

/* .index-shop */
.index-shop {
	margin-bottom: 60px;
	padding: 60px 20px;
	background-color: #004079;
	background-image: url(../img/index/img_shop.jpg);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
.shop-info-list {
	width: 450px;
	margin-left: auto;
}
.shop-info-list__item {
	margin: 5px 0;
}
.shop-info-list__item a {
	display: block;
	padding: 70px 115px 70px 50px;
	background-color: rgba(0,63,119,.9);
	background-image: url(../img/common/icon_arrow_circle-wht.svg);
	background-position: right 50px center;
	background-repeat: no-repeat;
	font-size: 2.0rem;
	color: #fff;
	letter-spacing: 4px;
	text-decoration: none;
}
.shop-info-list__item a span {
	display: block;
	font-size: 1.2rem;
	letter-spacing: 1.2px;
}
@media screen and (max-width: 767px) {
	.index-shop {
		background-image: url(../img/index/img_shop-sp.jpg);
	}
	.shop-info-list {
		width: 100%;
		max-width: 450px;
	}
	.shop-info-list__item a {
		padding-top: 50px;
		padding-bottom: 50px;
	}
}

/* footer slider */
.slider-container {
  overflow: hidden;
}
.slider,
.slider_rtl {
  width: 100%;
  position: relative;
}
.slider .pac,
.slider_rtl .pac {
	padding: 0 5px;
	margin: 0 5px;
}
.slider .pac img,
.slider_rtl .pac img {
	border: 4px solid #BBD2E4;
}

/*-------------------------------
  concept
-------------------------------*/
.concept-content {
	position: relative;
	background-image: url(../img/item/img_map.png);
	background-position: center top;
	background-repeat: no-repeat;
	background-size:  1100px auto;
	min-height: 1020px;
}
.concept-content__kv {
	width: 360px;
	margin: 0 auto 100px;
	text-align: center;
}
.concept-content__text {
	margin-bottom: 90px;
	text-align: center;
}
.concept-content__image {
	margin: 0 -20px;
}
@media screen and (max-width: 767px) {
	.concept-content {
		margin: 0 -20px;
		background: none;
		overflow: hidden;
	}
	.concept-content .container {
		padding: 0 20px;
	}
	.concept-content__kv {
    width: 62.22%;
    max-width: 400px;
    margin: 0 auto 30px;
	}
	.concept-content__text {
		margin-bottom: 50px;
		text-align: left;
	}
	.concept-content__text-inner {
		margin: 0 -20px;
		padding: 0 20px;
		background-image: url(../img/item/img_map.png);
		background-position: center top;
		background-repeat: no-repeat;
		background-size:  1100px auto;
		background-size: 100% auto;
	}
	.concept-content__image {
		padding: 0;
	}
}

/*-------------------------------
  company
-------------------------------*/
body.company .l-main {
	padding-top: 0;
}
.company-kv {
	margin: 0 0 60px;
}
.company-kv img {
	margin: 0 auto;
}
.company-content__lead {
	text-align: center;
}
.company-business__item {
	align-items: center;
	margin-bottom: 60px;
}
.company-business__logo {
	width: 200px;
	margin-bottom: 35px;
}
.company-business__text .btns {
	margin-top: 2em;
}
.img-award {
	width: 250px;
}
@media screen and (max-width: 767px) {
	.company-content__lead {
		text-align: left;
	}
	.company-content .map-block {
		margin: 0 -20px
	}
	.company-business__logo {
		margin: 0 auto 25px;
	}
	.company-content .text-block__text-box {
		margin-bottom: 0;
	}
	.img-award {
		width: 100%;
		margin-bottom: 0;
	}
	.img-award img {
    width: 100%;
    max-width: 250px;
	}
}

/*-------------------------------
  store
-------------------------------*/
.store-anchor {
	margin-bottom: 100px;
}
.store-anchor-list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 -14px;
}
.store-anchor-list li {
	position: relative;
	width: 160px;
	margin: 0 14px;
}
.store-anchor-list li a {
	display: block;
	padding: 10px 15px;
	border: 1px solid #003F77;
	font-size: 1.4rem;
	font-weight: bold;
	color: #003F77;
	text-decoration: none;
	text-align: center;
	border-radius: 4px;
}
.store-title {
	margin: 90px 0 30px;
	font-size: 2.0rem;
	font-weight: bold;
	text-align: center;
}
.store-title span {
	display: block;
	font-size: 1.2rem;
}
.store-list__item {
	display: flex;
	padding: 25px 0;
	border-bottom: 1px solid #E0E0E0;
}
.store-list__item:first-of-type {
	border-top: 1px solid #E0E0E0;
}
.store-list__name {
	width: 200px;
	margin-right: 50px;
}
.store-list__address {
	margin-right: 50px;
}
.store-list__map {
	margin-left: auto;
}
@media screen and (max-width: 767px) {
	.store-anchor {
		margin-bottom: 80px;
	}
	.store-anchor-list {
		border-bottom: 1px solid rgba(0,63,119,.2);
	}
	.store-anchor-list li {
		width: 50%;
		border-top: 1px solid rgba(0,63,119,.2);
	}
	.store-anchor-list li:nth-child(odd) {
		border-right: 1px solid rgba(0,63,119,.2);
	}
	.store-anchor-list li::before,
	.store-anchor-list li:last-of-type:after {
		display: none;
	}
}

/*-------------------------------
  item archive
-------------------------------*/
.item-anchor {
	margin-bottom: 100px;
}
.item-anchor-list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: -20px;
}
.item-anchor-list li {
	position: relative;
	width: 180px;
	margin-top: 20px;
}
.item-anchor-list li::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 1px;
	height: 100%;
	background-color: rgba(0,63,119,.2);
	z-index: 1;
}
.item-anchor-list li:last-of-type:after {
	position: absolute;
	top: 0;
	right: 0;
	content: "";
	width: 1px;
	height: 100%;
	background-color: rgba(0,63,119,.2);
	z-index: 1;
}
.item-anchor-list li a {
	display: block;
	padding: 10px 35px;
	background-image: url(../img/common/icon_arrow_down.svg);
	background-position: right 20px center;
	background-repeat: no-repeat;
	font-size: 1.4rem;
	font-weight: bold;
	color: #003F77;
	text-decoration: none;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.item-anchor {
		margin-bottom: 80px;
	}
	.item-anchor-list {
		margin-top: 0;
		border-bottom: 1px solid rgba(0,63,119,.2);		
	}
	.item-anchor-list li {
		width: 50%;
		margin-top: 0;
		border-top: 1px solid rgba(0,63,119,.2);
	}
	.item-anchor-list li:nth-child(odd) {
		border-right: 1px solid rgba(0,63,119,.2);
	}
	.item-anchor-list li::before,
	.item-anchor-list li:last-of-type:after {
		display: none;
	}
}
.post-type-archive-item .l-main__inner {
	padding: 0;
}
.post-type-archive-item .l-main__inner .container {
	max-width: 1400px;
	max-width: none;
}
.item-area {
	border-top: 1px solid #E0E0E0;
}
.post-type-archive-item .item-area__block:not(:last-of-type) {
	margin-bottom: 60px;
}
.post-type-archive-item .item-area__title h2 {
  margin-top: -1px;
  border-top: 1px solid #E0E0E0;
}
.item-area__title {
	position: relative;
}
.item-area__title h2 {
	position: relative;
	padding: 30px;
	font-size: 2.0rem;
	font-weight: bold;
	text-align: center;
	color: #003F77;
	letter-spacing: 4px;
	line-height: 1.6;
}
.item-area__title h2 span {
	display: block;
	font-size: 1.2rem;
	font-weight: normal;
	letter-spacing: 1.2px;
}
.accordion .item-area__title {
	cursor: pointer;
}
.item-area__title .accordion__btn {
	position: absolute;
	top: 50%;
	right: 30px;
	display: inline-block;
	width: 110px;
	padding: 5px 5px 5px 35px;
	background-color: #003F77;
	border-radius: 4px;
	transform: translateY(-50%);
	text-align: center;
	color: #fff;
}
.item-area__title .accordion__btn .icon {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 20px;
	width: 14px;
	height: 14px;
	margin: auto 0
}
.item-area__title .accordion__btn .icon::before,
.item-area__title .accordion__btn .icon::after {
	top: 50%;
	position: absolute;
	content: "";
	display: block;
	width: 14px;
	height: 2px;
	background-color: #fff;
	border-radius: 2px;
	transition: .2s;
}
.item-area__title .accordion__btn .icon::before {
	transform: translateY(-50%);
}
.item-area__title .accordion__btn .icon::after {
	transform: rotate(90deg);
}
.item-area__title.is-active .accordion__btn .icon::after {
	opacity: 0;
}
.item-list {
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #E0E0E0;
}
.item-list__item {
	width: calc(100% / 4);
	border-right: 1px solid #E0E0E0;
	border-bottom: 1px solid #E0E0E0;
	text-align: center;
}
.item-list__item:nth-child(4n) {
	border-right: none;
}
.item-list__item a {
	position: relative;
	display: block;
	height: 100%;
	text-decoration: none;
}

.item-list__item .item-list__inner {
	padding: 10px 30px 30px
}
.item-list__pref {
	position: relative;
	margin-bottom: 10px;
	padding: 55px 15px;

	font-size: 2.0rem;
	font-weight: bold;
	color: #275271;
	letter-spacing: 2px;
	line-height: 1.6;
}
.item-list__pref::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 100%;
	background-color: rgba(0,63,119,.05);
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
	mask-position: center center;
  mask-size: contain;
  mask-repeat: no-repeat;
}
.pref-hokkaido .item-list__pref::before {
  mask-image: url(../img/item/map_hokkaido.svg);
}
.pref-aomori .item-list__pref::before {
	mask-image: url(../img/item/map_aomori.svg);
}
.pref-iwate .item-list__pref::before {
	mask-image: url(../img/item/map_iwate.svg);
}
.pref-miyagi .item-list__pref::before {
	mask-image: url(../img/item/map_miyagi.svg);
}
.pref-akita .item-list__pref::before {
	mask-image: url(../img/item/map_akita.svg);
}
.pref-yamagata .item-list__pref::before {
	mask-image: url(../img/item/map_yamagata.svg);
}
.pref-fukushima .item-list__pref::before {
	mask-image: url(../img/item/map_fukushima.svg);
}
.pref-ibaraki .item-list__pref::before {
	mask-image: url(../img/item/map_ibaraki.svg);
}
.pref-tochigi .item-list__pref::before {
	mask-image: url(../img/item/map_tochigi.svg);
}
.pref-gunma .item-list__pref::before {
	mask-image: url(../img/item/map_gunma.svg);
}
.pref-saitama .item-list__pref::before {
	mask-image: url(../img/item/map_saitama.svg);
}
.pref-chiba .item-list__pref::before {
	mask-image: url(../img/item/map_chiba.svg);
}
.pref-tokyo .item-list__pref::before {
	mask-image: url(../img/item/map_tokyo.svg);
}
.pref-kanagawa .item-list__pref::before {
	mask-image: url(../img/item/map_kanagawa.svg);
}
.pref-niigata .item-list__pref::before {
	mask-image: url(../img/item/map_niigata.svg);
}
.pref-toyama .item-list__pref::before {
	mask-image: url(../img/item/map_toyama.svg);
}
.pref-ishikawa .item-list__pref::before {
	mask-image: url(../img/item/map_ishikawa.svg);
}
.pref-fukui .item-list__pref::before {
	mask-image: url(../img/item/map_fukui.svg);
}
.pref-yamanashi .item-list__pref::before {
	mask-image: url(../img/item/map_yamanashi.svg);
}
.pref-nagano .item-list__pref::before {
	mask-image: url(../img/item/map_nagano.svg);
}
.pref-gifu .item-list__pref::before {
	mask-image: url(../img/item/map_gifu.svg);
}
.pref-shizuoka .item-list__pref::before {
	mask-image: url(../img/item/map_shizuoka.svg);
}
.pref-aichi .item-list__pref::before {
	mask-image: url(../img/item/map_aichi.svg);
}
.pref-mie .item-list__pref::before {
	mask-image: url(../img/item/map_mie.svg);
}
.pref-shiga .item-list__pref::before {
	mask-image: url(../img/item/map_shiga.svg);
}
.pref-kyoto .item-list__pref::before {
	mask-image: url(../img/item/map_kyoto.svg);
}
.pref-osaka .item-list__pref::before {
	mask-image: url(../img/item/map_osaka.svg);
}
.pref-hyogo .item-list__pref::before {
	mask-image: url(../img/item/map_hyogo.svg);
}
.pref-nara .item-list__pref::before {
	mask-image: url(../img/item/map_nara.svg);
}
.pref-wakayama .item-list__pref::before {
	mask-image: url(../img/item/map_wakayama.svg);
}
.pref-tottori .item-list__pref::before {
	mask-image: url(../img/item/map_tottori.svg);
}
.pref-shimane .item-list__pref::before {
	mask-image: url(../img/item/map_shimane.svg);
}
.pref-okayama .item-list__pref::before {
	mask-image: url(../img/item/map_okayama.svg);
}
.pref-hiroshima .item-list__pref::before {
	mask-image: url(../img/item/map_hiroshima.svg);
}
.pref-yamaguchi .item-list__pref::before {
	mask-image: url(../img/item/map_yamaguchi.svg);
}
.pref-tokushima .item-list__pref::before {
	mask-image: url(../img/item/map_tokushima.svg);
}
.pref-kagawa .item-list__pref::before {
	mask-image: url(../img/item/map_kagawa.svg);
}
.pref-ehime .item-list__pref::before {
	mask-image: url(../img/item/map_ehime.svg);
}
.pref-kochi .item-list__pref::before {
	mask-image: url(../img/item/map_kochi.svg);
}
.pref-fukuoka .item-list__pref::before {
	mask-image: url(../img/item/map_fukuoka.svg);
}
.pref-saga .item-list__pref::before {
	mask-image: url(../img/item/map_saga.svg);
}
.pref-nagasaki .item-list__pref::before {
	mask-image: url(../img/item/map_nagasaki.svg);
}
.pref-kumamoto .item-list__pref::before {
	mask-image: url(../img/item/map_kumamoto.svg);
}
.pref-oita .item-list__pref::before {
	mask-image: url(../img/item/map_oita.svg);
}
.pref-miyazaki .item-list__pref::before {
	mask-image: url(../img/item/map_miyazaki.svg);
}
.pref-kagoshima .item-list__pref::before {
	mask-image: url(../img/item/map_kagoshima.svg);
}
.pref-okinawa .item-list__pref::before {
	mask-image: url(../img/item/map_okinawa.svg);
}
.item-list__pref span {
	display: block;
	font-weight: normal;
	font-size: 1.2rem;
	text-transform: capitalize;
	letter-spacing: 1.2px;
}
.item-list__image {
	margin-bottom: 20px;
}
.item-list__image img {
	border: 6px solid #BBD2E4;
}
.item-list__name span {
	display: inline-block;
	margin-bottom: 20px;
	padding: 2px 8px;
	border: 1px solid #000;
	background-color: #fff;
	border-radius: 4px;
	font-size: 1.0rem;
	letter-spacing: 1px;
}
.item-list__item.pac-color01 .item-list__name span {
	color: #15496B;
	border-color: #15496B;
}
.item-list__item.pac-color02 .item-list__name span {
	color: #506F40;
	border-color: #506F40;
}
.item-list__item.pac-color03 .item-list__name span {
	color: #1A92A9;
	border-color: #1A92A9;
}
.item-list__item.pac-color04 .item-list__name span {
	color: #674876;
	border-color: #674876;
}
.item-list__item.pac-color05 .item-list__name span {
	color: #D35E83;
	border-color: #D35E83;
}
.item-list__item.pac-color06 .item-list__name span {
	color: #B62045;
	border-color: #B62045;
}
.item-list__item.pac-color07 .item-list__name span {
	color: #C67921;
	border-color: #C67921;
}
.item-list__item.pac-color08 .item-list__name span {
	color: #DB4E26;
	border-color: #DB4E26;
}
.item-list__item.pac-color09 .item-list__name span {
	color: #A69819;
	border-color: #A69819;
}
.item-list__meigara {
	font-size: 2.4rem;
	font-weight: bold;
	letter-spacing: 2.4px;
	line-height: 1.6;
}
.item-list__item.pac-color01 .item-list__meigara {
	color: #15496B;
	border-color: #15496B;
}
.item-list__item.pac-color02 .item-list__meigara {
	color: #506F40;
	border-color: #506F40;
}
.item-list__item.pac-color03 .item-list__meigara {
	color: #1A92A9;
	border-color: #1A92A9;
}
.item-list__item.pac-color04 .item-list__meigara {
	color: #674876;
	border-color: #674876;
}
.item-list__item.pac-color05 .item-list__meigara {
	color: #D35E83;
	border-color: #D35E83;
}
.item-list__item.pac-color06 .item-list__meigara {
	color: #B62045;
	border-color: #B62045;
}
.item-list__item.pac-color07 .item-list__meigara {
	color: #C67921;
	border-color: #C67921;
}
.item-list__item.pac-color08 .item-list__meigara {
	color: #DB4E26;
	border-color: #DB4E26;
}
.item-list__item.pac-color09 .item-list__meigara {
	color: #A69819;
	border-color: #A69819;
}
.item-list__item .arrow {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 30px;
	height: 30px;
	background-color: #000;
	background-image: url(../img/common/icon_arrow_right02-wht.svg);
	background-position: center;
	background-repeat: no-repeat;
}
.item-list__item.pac-color01 .arrow {
	background-color: #15496B;
}
.item-list__item.pac-color02 .arrow {
	background-color: #506F40;
}
.item-list__item.pac-color03 .arrow {
	background-color: #1A92A9;
}
.item-list__item.pac-color04 .arrow {
	background-color: #674876;
}
.item-list__item.pac-color05 .arrow {
	background-color: #D35E83;
}
.item-list__item.pac-color06 .arrow {
	background-color: #B62045;
}
.item-list__item.pac-color07 .arrow {
	background-color: #C67921;
}
.item-list__item.pac-color08 .arrow {
	background-color: #DB4E26;
}
.item-list__item.pac-color09 .arrow {
	background-color: #A69819;
}
body.item .item-area__title {
	margin-top: -1px;
}
body.item .item-list__item {
	border-bottom: 1px solid #E0E0E0;
}
@media screen and (min-width: 768px) {
  .item-list__item a:hover {
    opacity: 1;
    background-color: #ccc;
    color: #fff;
  }
	.item-list__item a:hover .item-list__inner {
		background-image: url(../img/item/bg_item.png);
		background-position: center;
		background-size: 350px auto;
		background-repeat: repeat;
	}
  .item-list__item.pac-color01 a:hover {
    background-color: #15496B;
  }
  .item-list__item.pac-color02 a:hover {
    background-color: #506F40;
  }
  .item-list__item.pac-color03 a:hover {
    background-color: #1A92A9;
  }
  .item-list__item.pac-color04 a:hover {
    background-color: #674876;
  }
  .item-list__item.pac-color05 a:hover {
    background-color: #D35E83;
  }
  .item-list__item.pac-color06 a:hover {
    background-color: #B62045;
  }
  .item-list__item.pac-color07 a:hover {
    background-color: #C67921;
  }
  .item-list__item.pac-color08 a:hover {
    background-color: #DB4E26;
  }
  .item-list__item.pac-color09 a:hover {
    background-color: #A69819;
  }
	.item-list__item a:hover .item-list__pref {
		color: #fff;
	}
  .item-list__item a:hover .item-list__pref::before {
    background-color: rgba(255, 255, 255, .2);
  }
	.item-list__item a:hover .item-list__meigara {
    color: #fff;
  }
}
@media screen and (max-width: 767px) {
	.post-type-archive-item .item-area__block:not(:last-of-type) {
		margin-bottom: 20px;
	}
	.item-area__title {
		font-size: 1.8rem;
	}
	.item-area__title h2 {
		padding: 25px 20px;
		text-align: left;
	}
	.item-list__item {
		width: 50%;
	}
	.post-type-archive-item .item-area__title h2 {
		text-align: center;
	}
	.item-area__title .accordion__btn {
		right: 20px;
		font-size: 1.4rem;
	}
	.item-list__item .item-list__inner {
		padding: 15px 20px;
	}
	.item-list__item a:active {
    opacity: 1;
    background-color: #ccc;
    color: #fff;
  }
	.item-list__item a:active .item-list__inner {
		background-image: url(../img/item/bg_item.png);
		background-position: center;
		background-size: 350px auto;
		background-repeat: repeat;
	}
  .item-list__item.pac-color01 a:active {
    background-color: #15496B;
  }
  .item-list__item.pac-color02 a:active {
    background-color: #506F40;
  }
  .item-list__item.pac-color03 a:active {
    background-color: #1A92A9;
  }
  .item-list__item.pac-color04 a:active {
    background-color: #674876;
  }
  .item-list__item.pac-color05 a:active {
    background-color: #D35E83;
  }
  .item-list__item.pac-color06 a:active {
    background-color: #B62045;
  }
  .item-list__item.pac-color07 a:active {
    background-color: #C67921;
  }
  .item-list__item.pac-color08 a:active {
    background-color: #DB4E26;
  }
  .item-list__item.pac-color09 a:active {
    background-color: #A69819;
  }
	.item-list__item a:active .item-list__pref {
		color: #fff;
	}
  .item-list__item a:active .item-list__pref::before {
    background-color: rgba(255, 255, 255, .2);
  }
  .item-list__item a:active .item-list__meigara {
    color: #fff;
  }
	.item-list__pref {
		margin-bottom: 0;
		padding: 30px 5px;
		font-size: 1.6rem;
	}
	.item-list__meigara {
		font-size: 1.8rem;
	}
	.item-list__name span {
		margin-bottom: 10px;
	}
	.item-list__item .arrow {
		display: none;
	}
}

/*-------------------------------
  item-detail
-------------------------------*/
.single-item .l-main {
	padding-bottom: 0;
}
.item-detail__main {
	max-width: 880px;
	padding-bottom: 100px;
	margin: 0 auto 50px;
	overflow: hidden;
}
.item-image {
	margin-bottom: 60px;
}
.item-image__item {
	max-width: 500px;
	margin: 0 auto;
}
.item-description {
	position: relative;
	padding-bottom: 50px;
	background-position: right top;
	background-repeat: no-repeat;
	background-size: 580px auto;
}
.item-description::before {
	position: absolute;
	top: -25px;
	right: -100px;
	content: "";
	width: 570px;
	height: 420px;
	background-color: rgba(0,63,119,.05);
  -webkit-mask-position: right top;
  -webkit-mask-size: cover;
  -webkit-mask-repeat: no-repeat;
	mask-position: right top;
  mask-size: cover;
  mask-repeat: no-repeat;
	z-index: -1;
}
.item-detail__main.pref-hokkaido .item-description::before {
	mask-image: url(../img/item/map_hokkaido.svg);
}
.item-detail__main.pref-aomori .item-description::before {
	mask-image: url(../img/item/map_aomori.svg);
}
.item-detail__main.pref-iwate .item-description::before {
	mask-image: url(../img/item/map_iwate.svg);
}
.item-detail__main.pref-miyagi .item-description::before {
	mask-image: url(../img/item/map_miyagi.svg);
}
.item-detail__main.pref-akita .item-description::before {
	mask-image: url(../img/item/map_akita.svg);
}
.item-detail__main.pref-yamagata .item-description::before {
	mask-image: url(../img/item/map_yamagata.svg);
}
.item-detail__main.pref-fukushima .item-description::before {
	mask-image: url(../img/item/map_fukushima.svg);
}
.item-detail__main.pref-ibaraki .item-description::before {
	mask-image: url(../img/item/map_ibaraki.svg);
}
.item-detail__main.pref-tochigi .item-description::before {
	mask-image: url(../img/item/map_tochigi.svg);
}
.item-detail__main.pref-gunma .item-description::before {
	mask-image: url(../img/item/map_gunma.svg);
}
.item-detail__main.pref-saitama .item-description::before {
	mask-image: url(../img/item/map_saitama.svg);
}
.item-detail__main.pref-chiba .item-description::before {
	mask-image: url(../img/item/map_chiba.svg);
}
.item-detail__main.pref-tokyo .item-description::before {
	mask-image: url(../img/item/map_tokyo.svg);
}
.item-detail__main.pref-kanagawa .item-description::before {
	mask-image: url(../img/item/map_kanagawa.svg);
}
.item-detail__main.pref-niigata .item-description::before {
	mask-image: url(../img/item/map_niigata.svg);
}
.item-detail__main.pref-toyama .item-description::before {
	mask-image: url(../img/item/map_toyama.svg);
}
.item-detail__main.pref-ishikawa .item-description::before {
	mask-image: url(../img/item/map_ishikawa.svg);
}
.item-detail__main.pref-fukui .item-description::before {
	mask-image: url(../img/item/map_fukui.svg);
}
.item-detail__main.pref-yamanashi .item-description::before {
	mask-image: url(../img/item/map_yamanashi.svg);
}
.item-detail__main.pref-nagano .item-description::before {
	mask-image: url(../img/item/map_nagano.svg);
}
.item-detail__main.pref-gifu .item-description::before {
	mask-image: url(../img/item/map_gifu.svg);
}
.item-detail__main.pref-shizuoka .item-description::before {
	mask-image: url(../img/item/map_shizuoka.svg);
}
.item-detail__main.pref-aichi .item-description::before {
	mask-image: url(../img/item/map_aichi.svg);
}
.item-detail__main.pref-mie .item-description::before {
	mask-image: url(../img/item/map_mie.svg);
}
.item-detail__main.pref-shiga .item-description::before {
	mask-image: url(../img/item/map_shiga.svg);
}
.item-detail__main.pref-kyoto .item-description::before {
	mask-image: url(../img/item/map_kyoto.svg);
}
.item-detail__main.pref-osaka .item-description::before {
	mask-image: url(../img/item/map_osaka.svg);
}
.item-detail__main.pref-hyogo .item-description::before {
	mask-image: url(../img/item/map_hyogo.svg);
}
.item-detail__main.pref-nara .item-description::before {
	mask-image: url(../img/item/map_nara.svg);
}
.item-detail__main.pref-wakayama .item-description::before {
	mask-image: url(../img/item/map_wakayama.svg);
}
.item-detail__main.pref-tottori .item-description::before {
	mask-image: url(../img/item/map_tottori.svg);
}
.item-detail__main.pref-shimane .item-description::before {
	mask-image: url(../img/item/map_shimane.svg);
}
.item-detail__main.pref-okayama .item-description::before {
	mask-image: url(../img/item/map_okayama.svg);
}
.item-detail__main.pref-hiroshima .item-description::before {
	mask-image: url(../img/item/map_hiroshima.svg);
}
.item-detail__main.pref-yamaguchi .item-description::before {
	mask-image: url(../img/item/map_yamaguchi.svg);
}
.item-detail__main.pref-tokushima .item-description::before {
	mask-image: url(../img/item/map_tokushima.svg);
}
.item-detail__main.pref-kagawa .item-description::before {
	mask-image: url(../img/item/map_kagawa.svg);
}
.item-detail__main.pref-ehime .item-description::before {
	mask-image: url(../img/item/map_ehime.svg);
}
.item-detail__main.pref-kochi .item-description::before {
	mask-image: url(../img/item/map_kochi.svg);
}
.item-detail__main.pref-fukuoka .item-description::before {
	mask-image: url(../img/item/map_fukuoka.svg);
}
.item-detail__main.pref-saga .item-description::before {
	mask-image: url(../img/item/map_saga.svg);
}
.item-detail__main.pref-nagasaki .item-description::before {
	mask-image: url(../img/item/map_nagasaki.svg);
}
.item-detail__main.pref-kumamoto .item-description::before {
	mask-image: url(../img/item/map_kumamoto.svg);
}
.item-detail__main.pref-oita .item-description::before {
	mask-image: url(../img/item/map_oita.svg);
}
.item-detail__main.pref-miyazaki .item-description::before {
	mask-image: url(../img/item/map_miyazaki.svg);
}
.item-detail__main.pref-kagoshima .item-description::before {
	mask-image: url(../img/item/map_kagoshima.svg);
}
.item-detail__main.pref-okinawa .item-description::before {
	mask-image: url(../img/item/map_okinawa.svg);
}
.item-description__area {
	display: flex;
	flex-wrap: wrap;
	width: fit-content;
	margin-bottom: 15px;
	border: 1px solid #003F77;
	border-radius: 4px;
}
.item-description__area .area {
	padding: 2px 10px;
	background-color: #003F77;
	color: #fff;
}
.item-description__area .name {
	padding: 2px 10px;
}
.item-description__meigara {
	margin-bottom: 20px;
	font-size: 6.0rem;
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: 6px;
}
.item-description .btn-wrapper {
	margin-top: 2em;
	font-size: 1.6rem;
	text-align: left;
}
.item-detail__sub {
	margin-bottom: 100px;
}
.item-detail-block:not(:last-of-type) {
	margin-bottom: 150px;	
}
.item-detail-block__title {
	margin-bottom: 40px;
	padding: 10px 0;
	border-top: 2px solid #003F77;
	border-bottom: 2px dotted #003F77;
	font-size: 3.0rem;
	font-weight: bold;
	text-align: center;
	letter-spacing: 3px;
}
.item-detail-block__inner {
	display: flex;
	margin-bottom: 60px;
}
.item-detail-block__text-box {
	flex: 1;
}
.item-detail-block__text-box p {
	line-height: 2.4;
}
.item-detail__sub .item-detail-block__catch {
	margin-bottom: 15px;
	font-size: 3.0rem;
	font-weight: bold;
	letter-spacing: 3px;
	line-height: 1.6;
}
.item-detail-block__name {
	margin-bottom: 5px;
	font-size: 3.0rem;
	font-weight: bold;
	letter-spacing: 3px;
}
.item-detail-block__image {
	width: 49%;
	min-width: 300px;
	margin-left: 60px;
}
.item-detail-block__qr {
	width: 140px;
	margin: 40px 0 0 60px;
}
.qr-type {
	margin-top: 20px;
	padding: 5px;
	background-color: #003F77;
	color: #fff;
	text-align: center;
	border-radius: 4px;
}
.qr-type.insta span {
	display: inline-block;
	padding-left: 30px;
	background-image: url(../img/item/icon_insta.svg);
	background-position: left center;
	background-repeat: no-repeat;
}
.item-detail-block__title02 {
	padding: 10px 30px;
	background-color: #003F77;
	font-size: 2.4rem;
	font-weight: bold;
	color: #fff;
	border-radius: 4px;
	letter-spacing: 2.4px;
}
.item-detail-block__title02.icon-sake {
	padding-left: 75px;
	background-image: url(../img/item/icon_sake.svg);
	background-position: 30px center;
	background-repeat: no-repeat;
}
.map-block {
	position: relative;
	padding-top: 41%;
}
.map-block iframe {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
}
.cv-block {
	margin: 50px 0 60px;
	padding: 50px 0;
	background-image: url(../img/common/bg_catch.png);
	background-position: center;
	background-size: 1400px auto;
	background-repeat: repeat;
}
.cv-block .btn-cv {
	width: 480px;
}
@media screen and (max-width: 767px) {
	.item-detail__main {
		padding-bottom: 50px;
    margin: 0 auto 30px;
	}
	.item-description {
		padding-bottom: 0;
	}
	.item-description::before {
		top: 30px;
    right: 0;
    width: 100%;
    height: 0;
    padding-top: 75%;
    -webkit-mask-size: contain;
    -webkit-mask-position: center;
		mask-size: cover;
    mask-position: center;
	}
	.item-description__area {
		margin-bottom: 15px;
	}
	.item-description__meigara {
		font-size: 3.5rem;
	}
	.item-description .btn-wrapper {
		text-align: center;
	}
	.item-detail__sub {
		margin-bottom: 80px;
	}
	.item-detail-block:not(:last-of-type) {
    margin-bottom: 80px;
	}
	.item-detail-block__title {
		margin-bottom: 30px;
		font-size: 2.3rem;
	}
	.item-detail-block__inner {
		display: block;
	}
	.item-detail-block__text-box {
		margin-bottom: 30px;
	}
	.item-detail-block__qr {
		margin: 40px auto 0 auto;
	}
	.item-detail-block__name {
		font-size: 2.5rem;
	}
	.item-detail-block__image {
		width: 100%;
		min-width: auto;
		margin-left: 0;
		text-align: center;
	}
	.item-detail-block__image img {
		width: 100%;
		max-width: 400px;
	}
	.item-detail-block__title02.icon-sake {
		padding-left: 60px;
		background-position: 20px center;
		font-size: 2.0rem;
	}
	.map-block {
		padding-top: 55%;
	}
	.cv-block {
		padding: 40px;
	}
	.cv-block .btn-cv {
		width: 100%;
	}
}

/*-------------------------------
  post list (news,column,media)
-------------------------------*/
.post-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -20px;
}
.post-list__item {
	width: calc((100% - 120px) / 3);
	margin: 0 20px;
	border: 1px solid #D8E1EA;
	border-radius: 5px;
	overflow: hidden;
}
.post-list__item:nth-child(n+4) {
	margin-top: 40px;
}
.post-list__thumbnail {
	margin-bottom: 10px;
}
.post-list__item dl {
	padding: 25px 30px;
	font-weight: bold;
}
.post-list__item dl a {
	text-decoration: none;
	color: #003F77;
}
.post-list__item dt {
	display: flex;
	width: fit-content;
	border-radius: 4px;
	font-size: 1.0rem;
}
.post-list__item .posted-on {
	padding: 2px 10px;
	background-color: #003F77;
	color: #fff;
}
.post-list__item .post-categories {
	display: flex;
	flex-wrap: wrap;
	padding: 2px 10px;
}
.post-list__item .post-categories li {
	margin-right: 10px;
}
.post-list__item .post-categories li:last-of-type {
	margin-right: 0;
}
@media screen and (max-width: 767px) {
	.post-list {
		display: block;
		margin: 0;
	}
	.post-list__item {
		width: 100%;
		margin: 0 0 30px;
	}
	.post-list__item:nth-child(n+4) {
		margin-top: 0;
	}
}

/*-------------------------------
  post single
-------------------------------*/
.entry-container {
	text-align: left;
}
.entry-header {
	margin-bottom: 30px;
	padding-bottom: 20px;
	border-bottom: 2px dotted #003F77;
}
.entry-title {
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 3px;
}
.entry-meta {
	display: flex;
	width: fit-content;
	margin-bottom: 15px;
	border: 1px solid #003F77;
	border-radius: 4px;
	font-size: 1.0rem;
}
.entry-meta .posted-on {
	padding: 2px 10px;
	background-color: #003F77;
	color: #fff;
}
.post-thumbnail {
	margin-bottom: 25px;
}
.entry-content {
	margin-bottom: 50px;
}
.entry-container .cmn-title {
	margin-bottom: 15px;
}
.entry-container h1 {
	font-weight: bold;
}
.entry-container h2 {
	font-weight: bold;
}
.entry-container h3 {
	font-weight: bold;
}
.entry-container h4 {
	font-weight: bold;
}
.entry-container h5 {
	font-weight: bold;
}
.entry-container h6 {
	font-weight: bold;
}
.entry-container ul {
	margin-bottom: 1.5em;
	margin-left: 1.5em;
	list-style: disc;
}
.entry-container li {
	position: relative;
}
.entry-container ol {
	margin-bottom: 1.5em;
	margin-left: 1.5em;
	list-style: decimal;
}
.entry-container p {
	margin-bottom: 2em;
}
.entry-container em {
	font-style: italic;
}
.entry-container strong {
	font-weight: bold;
}
.wp-block-image {
	margin: 1.5em 0;
}
.entry-container .link-wrapper {
	text-align: center;	
}
.post-share {
	margin: 0 -20px 60px;
	padding: 35px 10px;
	background-color: #EDF4FA;
}
.post-share__list {
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	justify-content: center;
	font-size: 1.6rem;
	font-weight: bold;
}
.post-share__list li {
	margin: 5px;
}
.post-share__list a {
	display: inline-block;
	padding: 10px 18px;
	background-color: #003F77;
	color: #fff;
	border-radius: 4px;
	text-decoration: none;
	letter-spacing: 1.6px;
}
.post-share__list li span {
	display: inline-block;
	padding-left: 35px;
	background-position: center left;
	background-repeat: no-repeat;
	background-size: 35px auto;
}
.post-share__list li.fb span {
	background-image: url(../img/common/icon_fb.png);
}
.post-share__list li.x span {
	background-image: url(../img/common/icon_x.png);
}
.post-share__list li.line span {
	background-image: url(../img/common/icon_line.png);
}
.post-categories {
	list-style: none !important;
	display: flex;
	flex-wrap: wrap;
	padding: 2px 10px;
	margin: 0 !important;
}
.post-categories li {
	margin-right: 10px;
}
.post-categories li:last-of-type {
	margin-right: 0;
}
.post-categories a {
	text-decoration: none;
	color: #003F77;
}
.entry-meta .cate {
	display: flex;
	flex-wrap: wrap;
	padding: 2px 10px;
	list-style: none;
	margin: 0;
}
.entry-meta .cate a {
	margin-right: 10px;
	text-decoration: none;
	color: #003F77;
}
.entry-meta .cate a:last-of-type {
	margin-right: 0;
}
@media screen and (max-width: 767px) {
	.entry-title {
		font-size: 2.0rem;
	}
	.entry-meta {
		margin-bottom: 10px;
	}
	.post-share {
		margin: 0 -20px 60px;
	}
	.post-share__list a {
		padding: 10px 12px;
		font-size: 1.2rem;
	}
	.post-share__list li span {
		padding-left: 30px;
		padding-left: 35px;
		background-size: 30px auto;
	}
}

/*-------------------------------
  oem
-------------------------------*/
.oem .l-main {
	padding-bottom: 0;
}
.oem-content {
	padding: 20px;
}
.oem .oem-content .container {
	max-width: 1100px;
}
.oem .oem-content .text-block__image {
	width: 25%;
	min-width: 350px;
}
.oem-flow-list___item {
	position: relative;
	min-height: 90px;
	margin-bottom: 20px;
}
.oem-flow-list___item:last-of-type {
	margin-bottom: 0;
}
.oem-flow-list___item::after {
	position: absolute;
	top: 60px;
	left: 20px;
	content: "";
	width: 1px;
	height: calc(100% - 60px);
	background-color: #003F77;
}
.oem-flow-list___item:last-of-type:after {
	display: none;
}
.oem-flow-list___title {
	display: flex;
	margin-bottom: 20px;
	font-weight: bold;
	align-items: baseline;
}
.oem-flow-list___title .num {
	display: inline-block;
	width: 40px;
	height: 40px;
	margin-right: 20px;
	background-color: #003F77;
	font-weight: normal;
	color: #fff;
	text-align: center;
	line-height: 40px;
	border-radius: 4px;
}
.oem-flow-list___title .text {
	flex: 1;
}
.oem-flow-list___content {
	margin-left: 60px;
	padding: 15px 20px;
	background-color: #EDF4FA;
	border-radius: 5px;
}
.check-list li {
	position: relative;
	display: inline-flex;
	align-items: flex-start;
	margin-bottom: 20px;
	padding-left: 20PX;
	background-image: url(../img/common/icon_check.svg);
	background-position: left .6em;
	background-repeat: no-repeat;
}
.check-list li:last-of-type {
	margin-bottom: 0;
}

@media screen and (max-width: 767px) {
	.oem .oem-content .text-block__image {
		width: 100%;
    min-width: auto;
	}
}




/*-------------------------------
  fotm（contact、oem）
-------------------------------*/
.contact .l-main,
.oem .l-main,
.confirm .l-main {
	padding-bottom: 0;
}
.complete .l-main {
	padding-bottom: 100px;
}
.contact .l-main__inner,
.oem .l-main__inner,
.confirm .l-main__inner {
	padding-right: 0;
	padding-left: 0;
}
.complete .l-main__inner {
	padding: 0 20px;
}
.contact-content__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.contact .container,
.oem .container,
.confirm .container {
	width: 100%;
	max-width: none;
}
.complete .container {
	max-width: 1100px;
}
.contact-title {
	padding: 10px;
	background-color: #003F77;
	border-radius: 4px;
	font-size: 2.4rem;
	font-weight: bold;
	color: #fff;
	text-align: center;
	letter-spacing: 2.4px;
}
.contact-content__header {
	margin-bottom: 70px;
	padding: 0 20px;
	text-align: center;
}
.contact-content__header .contact-title {
	margin-bottom: 25px;
}
.contact-phone {
	margin-bottom: 10px;
}
.contact-phone a {
	display: inline-block;
	padding-left: 40px;
	background-image: url(../img/common/icon_phone.png);
	background-position: left center;
	background-repeat: no-repeat;
	background-size:  28px auto;
	font-size: 4.0rem;
	font-weight: bold;
	color: #003F77;
	letter-spacing: 4px;
	text-decoration: none;
	line-height: 1.3;
}
.contact-content__body {
	position: relative;
	/* margin: 0 -20px; */
	padding: 60px 20px 0;
	background-color: #EDF4FA;
}
.icon-required {
  display: inline-block;
  width: 50px;
  height: 26px;
  margin-right: 1em;
	background-color: #CB2835;
  font-size: 1.0rem;
	font-weight: bold;
  text-align: center;
	color: #fff;
  line-height: 26px;
	letter-spacing: 1px;
	border-radius: 5px;
}
.contact-form input,
.contact-form button,
.contact-form textarea,
.contact-form select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: middle;
	letter-spacing: 1.4px;
  cursor: pointer;
	border: none;
}
.contact-form input,
.contact-form textarea,
.contact-form select {
	width: 100%;
	box-shadow: 0px 0px 6px #D6E3ED;
}
.contact-form select {
	background-color: #fff;
	color: #003F77;
}
.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="button"],
.contact-form input[type="tel"],
.contact-form input[type="file"] {
  padding: 0 20px;
  cursor: auto;
  line-height: 60px;
  border-radius: 6px;
  font-size: 100%;
}
.contact-form input[type="file"] {
	padding: 0;
}
.contact-form textarea {
  padding: 15px;
  cursor: auto;
  border-radius: 5px;
  font-size: 100%;
}
.contact-form select {
  padding: 0 20px;
  cursor: pointer;
  width: 100%;
  height: 60px;
  line-height: 60px;
  border-radius: 6px;
  font-size: 100%;
}
.contact-form .select {
  position: relative;
}
.contact-form .select::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	border-top: 7px solid #003F77;
	border-right: 7px solid transparent;
	border-bottom: 7px solid transparent;
	border-left: 7px solid transparent;
}
.contact-form .table-list__item.item-block dt {
  display: block;
  padding-top: 10px;
}
/* placeholder */
::-webkit-input-placeholder { /* WebKit, Blink, Edge */
  color: #B4B4B4;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #B4B4B4;
}
::-moz-placeholder {
  /* Others */
  color: #B4B4B4;
}
::-ms-input-placeholder {
  /* Others */
  color: #B4B4B4;
}
::placeholder{ /* Others */
  color: #B4B4B4
}
.contact-form .table-list__item {
  padding: 30px 0;
}
.contact-form .table-list__item dt {
	display: flex;
  align-items: center;
  width: 195px;
  min-width: 195px;
}
.contact-form .table-list__item dt p {
  position: relative;
  width: 100%;
	margin-bottom: 0;
	font-weight: bold;
}
.contact-form .mwform-radio-field {
	margin: 5px 20px 5px 0;
}
.contact-form .mwform-radio-field [type=radio]:checked,
.contact-form .mwform-radio-field [type=radio]:not(:checked) {
	position: absolute;
	left: -9999px;
}
.contact-form .mwform-radio-field [type=radio]:checked+span,
.contact-form .mwform-radio-field [type=radio]:not(:checked)+span {
	position: relative;
	padding-left: 38px;
	cursor: pointer;
	line-height: 28px;
	display: inline-block;
}
.contact-form .mwform-radio-field [type=radio]:checked+span:before,
.contact-form .mwform-radio-field [type=radio]:not(:checked)+span:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 24px;
	height: 24px;
	border: 2px solid #003F77;
	border-radius: 100%;
	background: #fff;
}
.contact-form .mwform-radio-field [type=radio]:checked+span:after,
.contact-form .mwform-radio-field [type=radio]:not(:checked)+span:after {
	content: "";
	width: 12px;
	height: 12px;
	background: #003F77;
	position: absolute;
	top: 8px;
	left: 8px;
	border-radius: 100%;
	transition: all .2s ease;
}
.contact-form .mwform-radio-field [type=radio]:not(:checked)+span:after {
	opacity: 0;
	transform: scale(0);
}
.contact-form .mwform-radio-field [type=radio]:checked+span:after {
	opacity: 1;
	transform: scale(1);
}
.contact-form .privacy {
  margin: 30px 0;
	text-align: left;
}
.contact-form .privacy .title {
	margin-bottom: 5px;
	font-size: 1.6rem;
	font-weight: bold;
	letter-spacing: 1.6px;
}
.contact-form .privacy .lead {
  margin-bottom: 10px;
	line-height: 2.2;
}
.contact-form .privacy .lead a {
  color: #003F77;
}
.contact-form .privacy_chk {
	position: relative;
	width: 20px;
	height: 20px;
	margin-right: 1em;
	border: solid 2px #003F77;
	background-color: #fff;
}
.contact-form .privacy_chk:checked:after {
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 3px;
	width: 10px;
	height: 10px;
	background-color: #003F77;
}
.contact-form .btn-area {
  position: relative;
	margin-top: 40px;
	padding: 0 0 60px;
  text-align: center;
}
.contact-form .mw_wp_form .btn-area .error {
  padding-left: 0;
  margin-bottom: 20px;
}
.contact-form .btn-area .btn-cv {
  width: 480px;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
.contact-form .btn-area .page-back {
	margin-top: 40px;
	background-color: transparent;
	border-bottom: 1px solid #003F77;
	font-size: 1.4rem;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
	border-radius: 0;
}
.contact-form .mwform-checkbox-field label {
  cursor: pointer;
	font-weight: bold;
}
.contact-form .mwform-checkbox-field input {
  margin-right: 5px;
}
.contact-form .mwform-radio-field input {
  margin-right: 5px;
}
.mw_wp_form .error {
  display: block;
  width: 100%;
  margin-top: 10px;
  font-size: 100% !important;
  color: #CB2835;
}
.mw_wp_form .check .error {
  padding-left: 0;
}
.contact-form .mw_wp_form_confirm .table-list {
	border-top: none
}
.contact-form .mw_wp_form_confirm .table-list__item {
	padding-top: 30px;
	padding-bottom: 30px;
}
.contact-form .mw_wp_form_confirm .table-list__item dd {
  display: flex;
  align-items: center;
}
.contact-form .mw_wp_form_confirm .select {
  position: relative;
}
.contact-form .mw_wp_form_confirm .select::before {
  display: none;
}
.contact-form .mw_wp_form_confirm .privacy {
	padding-bottom: 30px;
	border-bottom: 1px dashed #003F77;
}
.contact-form .mw_wp_form_confirm .privacy .title,
.contact-form .mw_wp_form_confirm .privacy .lead {
  display: none;
}
.contact-form .mw_wp_form_confirm .check {
	font-weight: bold;
}
.contact-form .mw_wp_form_confirm .item-textarea dt {
  padding-top: 0;
}
.contact-confirm .contact-content__body {
	padding-top: 30px;
}
.contact-confirm .cmn-title {
	margin-bottom: 30px;
}
.contact-confirm .lead {
	margin-bottom: 35px;
}
.contact-confirm .table-list {
	margin-bottom: 40px;
	border-top: none;
}
.contact-confirm .input-row__items span,
.contact-confirm .confirm-hidden {
	display: none !important;
}
.contact-complete {
	text-align: center;	
}
.contact-complete .contact-complete__text {
	margin-bottom: 60px;
}
.contact-complete .contact-complete__text p {
	margin-bottom: 2em;
	line-height: 2.2;
}
@media screen and (min-width: 768px) {
	.contact-form .btn-area .btn-cv:hover {
		opacity: .8;
	}
  .contact-form .btn-area .page-back:hover {
    opacity: .7;
  }
}
@media screen and (max-width: 767px) {
	.contact .l-main__inner,
	.oem .l-main__inner,
	.confirm .l-main__inner {
		padding: 0 20px;
	}
	.complete .l-main {
		padding-bottom: 60px;
	}
	.contact-content__inner {
		width: 100%;
	}
	.contact-title {
		font-size: 2.0rem;
	}
	.contact-content__header {
		margin-bottom: 50px;
		padding: 0;
	}
	.contact-content__body {
		margin: 0 -20px;
	}
	.contact-phone a {
		font-size: 3.0rem;
	}
  .contact-form input[type="text"],
  .contact-form input[type="email"],
  .contact-form input[type="button"],
  .contact-form input[type="tel"] {
    height: 50px;
    line-height: 50px;
  }
  .contact-form textarea {
    height: 11em;
  }
  .contact-form select {
    height: 50px;
    line-height: 50px;
  }
	.contact-form .mwform-radio-field {
		display: inline-block;
		margin-top: 8px;
		margin-bottom: 8px;
	}
	.contact-form .mwform-radio-field:first-of-type {
		margin-top: 0;
	}
	.contact-form .mwform-radio-field:last-of-type {
		margin-bottom: 0;
	}
  .contact-form .table-list__item dt {
    width: 100%;
    min-width: auto;
    min-height: auto;
    padding-right: 0;
  }
	.contact-form .table-list__item.item-block dt {
		padding-top: 0;
	}
	.contact-form .table-list__item dd {
		margin-top: 15px;
	}
  .contact-form .input-row {
    display: block;
  }
	.input-row__items {
		margin: 0 0 10px;
	}
	.input-row__items .w200 {
		width: calc(100% - 2em);
	}
	.input-row__items:last-of-type {
		margin-bottom: 0;
	}
  .contact-form .btn-area {
		padding-top: 0;
	}
	.contact-form .btn-area .btn {
    width: 100%;
  }
  .contact-form .btn-area .page-back {
    position: static;
    margin-bottom: 1.5em;
  }
	.contact-form .privacy {
		margin-bottom: 30px;
	}
  .contact-form .mw_wp_form_confirm .table-list__item {
    padding-top: 20px;
    padding-bottom: 20px;
	}
	.contact-form .btn-area .btn-cv {
		width: 100%;
	}
  .mw_wp_form .error {
    padding-left: 0;
  }
}

/*-------------------------------
  sitemap
-------------------------------*/
.page-list a {
	display: block;
	text-decoration: none;
	color: #003F77;
}
.page-list > li {
	padding: 20px 30px;
	border-bottom: 1px solid #D8E1EA;
}
.page-list > li:last-of-type {
	border-bottom: none;
}
.page-list > li > a {
	position: relative;
	display: inline-block;
	padding: .5em 0 .5em 25px;
	font-size: 1.4rem;
	font-weight: bold;
	text-decoration: underline;
}
.page-list > li > a::before {
	position: absolute;
	top: 1.3em;
	left: 0;
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 6px;
	background-color: #003F77;
}
@media screen and (max-width: 767px) {
	.page-list > li {
		padding: 10px 20px;
	}
}

/*-------------------------------
  notfound 404
-------------------------------*/
.section-notfound {
	text-align: center;
}
.notfound-message {
	margin-bottom: 3em;
}
.notfound-message p:not(:last-of-type) {
	margin-bottom: 2.5em;
}

