@charset "UTF-8";

/*  heading  */
h3 {
	margin: 1em 0;
	font-size: 1.5em;
	font-weight: bold;
}
h3.w-line {
	padding: 0 0 0.25em 0;
	border-bottom: 1px solid #E3D9C6;
	box-sizing: border-box;
}
h4 {
	margin: 1em 0;
	font-size: 1.25em;
	font-weight: bold;
}

/*  a  */
a:hover {
	text-decoration: underline;
	color: #ffb300;
}

/*  section  */
section {
	padding: 60px 0;
	box-sizing: border-box;
}
section:first-of-type {
	padding-top: 0;
}
section:nth-of-type(even) {
	background-color: #F7F5F0;
}
@media screen and (min-width: 768px) {
	section {
		padding: 0 0;
	}
	section:first-of-type {
		padding-top: 0;
	}
}


/*  .sec-title01  */
section .sec-title01 {
	margin-top: 34px;
}
section:first-of-type .sec-title01 {
	margin-top: 0;
}
@media screen and (min-width: 768px) {
	section .sec-title01 {
		margin-top: 0;
	}
	section:first-of-type .sec-title01 {
		margin-top: 0;
	}
}

/*  .pan-nav  */
.pan-nav {
	display: block;
}

/*  .mv-under */
.mv-under figure {
	background-color: rgba(0,0,0,0.3);
}
.mv-under figure img {
	mix-blend-mode: multiply;
}

/*  .lead  */
.lead {
	margin: 1em 0;
	font-size: 1.5em;
	font-weight: bold;
}
.lead img {
	display: block;
	margin: 0 auto;
	width: 100%;
	height: auto;
}
@media screen and (min-width: 768px) {
	.lead img {
		max-width: 650px;
	}
}

/*  .indent-text  */
.indent-text span {
	display: block;
	margin: 1em 0;
	text-indent: 1em;
}

/*  .sign  */
.sign {
	margin: 2em 0 0;
	text-align: right;
}
.sign strong {
	display: block;
	font-size: 1.25em;
}
/*  ul,ol  */
div.content-wrapper ul,div.content-wrapper ol {
	margin: 2em 0;
}

/*  ul.disc-list  */
ul.disc-list {
	list-style-type: disc;
}
/*  ol.number-list  */
ol.number-list {
	margin: 1em 0;
}
ol.number-list > li {
	position: relative;
	padding: 0 0 0 1.5em;
	box-sizing: border-box;
}
ol.number-list > li:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	font-weight: bold;
}
ol.number-list > li:nth-of-type(1):before { content: "1.";}
ol.number-list > li:nth-of-type(2):before { content: "2.";}
ol.number-list > li:nth-of-type(3):before { content: "3.";}
ol.number-list > li:nth-of-type(4):before { content: "4.";}
ol.number-list > li:nth-of-type(5):before { content: "5.";}
ol.number-list > li:nth-of-type(6):before { content: "6.";}
ol.number-list > li:nth-of-type(7):before { content: "7.";}
ol.number-list > li:nth-of-type(8):before { content: "8.";}
ol.number-list > li:nth-of-type(9):before { content: "9.";}

/*  ul.number-list  */
ul.number-list {
	margin: 1em 0;
}
ul.number-list > li {
	position: relative;
	padding: 0 0 0 1.5em;
	box-sizing: border-box;
}
ul.number-list > li:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	font-weight: bold;
}
ul.number-list > li:nth-of-type(1):before { content: "1)";}
ul.number-list > li:nth-of-type(2):before { content: "2)";}
ul.number-list > li:nth-of-type(3):before { content: "3)";}
ul.number-list > li:nth-of-type(4):before { content: "4)";}
ul.number-list > li:nth-of-type(5):before { content: "5)";}
ul.number-list > li:nth-of-type(6):before { content: "6)";}
ul.number-list > li:nth-of-type(7):before { content: "7)";}
ul.number-list > li:nth-of-type(8):before { content: "8)";}
ul.number-list > li:nth-of-type(9):before { content: "9)";}

/*  .maru-number-list  */
.maru-number-list {
	margin: 1em 0;
}
.maru-number-list > li {
	position: relative;
	padding: 0 0 0 1.5em;
	box-sizing: border-box;
}
.maru-number-list > li:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
}
.maru-number-list > li:nth-of-type(1):before { content: "①";}
.maru-number-list > li:nth-of-type(2):before { content: "②";}
.maru-number-list > li:nth-of-type(3):before { content: "③";}
.maru-number-list > li:nth-of-type(4):before { content: "④";}
.maru-number-list > li:nth-of-type(5):before { content: "⑤";}
.maru-number-list > li:nth-of-type(6):before { content: "⑥";}
.maru-number-list > li:nth-of-type(7):before { content: "⑦";}
.maru-number-list > li:nth-of-type(8):before { content: "⑧";}
.maru-number-list > li:nth-of-type(9):before { content: "⑨";}

/*  .line-table  */
table.line-table {
	table-layout: fixed;
	width: 100%;
}
table.line-table tr {
	border-bottom: 1px solid #999999;
}
table.line-table tr:first-of-type {
	border-top: 1px solid #999999;
}
table.line-table tr th {
	width: 30%;
	padding: 1em;
	font-weight: bold;
	box-sizing: border-box;
}
table.line-table tr td {
	width: 70%;
	padding: 1em;
	box-sizing: border-box;
}

/*  .img-txt  */
.img-txt {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.img-txt .img {
	width: 100%;
	height: 200px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
.img-txt .txt {
	padding: 1em;
	width: 100%;
	font-weight: bold;
	box-sizing: border-box;
}
@media screen and (min-width: 768px) {
	.img-txt .img {
		width: 50%;
		height: 400px;
	}
	.img-txt .txt {
		width: 50%;
		padding: 0 4em;
	}
	.img-txt.left {
		flex-direction: row;
	}
	.img-txt.right {
		flex-direction: row-reverse;
	}
}

/*  .deco  */
.deco {
	display: block;
	margin: 1em 0;
	padding: 1em 0;
	background-image: url(/img/company/deco.jpg);
	background-repeat: no-repeat;
	background-size: auto 100%;
	background-position: left center;
	font-size: 1.5em;
	box-sizing: border-box;
}

/*  .inner-shortcut  */
.inner-shortcut {
	background-color: #ffffff !important;
}

/*  .label-list  */
.label-list {
	display: flex;
	flex-wrap: wrap;
	margin: 2em 0;
}
.label-list li {
	width: 100%;
	padding: 0.5em;
	box-sizing: border-box;
}
.label-list li a {
	position: relative;
	display: block;
	padding: 1em;
	background-color: #F0E8D9;
	font-weight: bold;
	text-align: center;
	box-sizing: border-box;
}
.label-list li a:after {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1em;
	content: "";
	display: block;
	width: 0.5em;
	height: 0.5em;
	margin: auto;
	border: 1px solid transparent;
	border-top: 2px solid #000000;
	border-right: 2px solid #000000;
	transform: rotate(45deg);
	box-sizing: border-box;
}
@media screen and (min-width: 768px) {
	.label-list {
		margin: 4em 0;
	}
	.label-list li {
		width: 25%;
	}
}

/*  .outer-shortcut */
.outer-shortcut {
	background-color: #F7F5F0;
}

/*  .panel-frame-list  */
.panel-frame-list {
	display: flex;
	flex-wrap: wrap;
}
.panel-frame-list li {
	width: 100%;
	padding: 0.5em;
	box-sizing: border-box;
}
.panel-frame-list li a {
	display: block;
}
.panel-frame-list li a:hover {
	opacity: 0.7;
}
.panel-frame-list li a figure {
	display: block;
	width: 100%;
	height: 66.66%;
	border: 5px solid #F0E8D9;
	box-sizing: border-box;
}
.panel-frame-list li a figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.panel-frame-list li a .label {
	padding: 0 0 2em 0;
	box-sizing: border-box;
}
.panel-frame-list li a .label .title {
	display: block;
	margin: 0.5em 0;
	font-size: 1.5em;
}
.panel-frame-list li a .label .supple {
	display: block;
}
@media screen and (min-width: 768px) {
	.panel-frame-list.col02 li {
		width: 50%;
	}
	.panel-frame-list.col03 li {
		width: 33.33%;
	}
	.panel-frame-list.col04 li {
		width: 25%;
	}
}
/*  .panel-frame-list.diagonal  */
.panel-frame-list.diagonal li a {
	position: relative;
}
.panel-frame-list.diagonal li a .label {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 66.66%;
	padding: 1em;
	background-color: rgba(255,255,255,0.7);
	clip-path: polygon(0 0, 100% 0, 0 100%);
	box-sizing: border-box;
}
.panel-frame-list.diagonal li a .label .title {
	margin: 0;
	font-size: 1.25em;
}

/*  .img-gallery  */
.img-gallery {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin: 2em 0;
}
.img-gallery img {
	display: block;
	width: 100%;
	padding: 1em;
	box-sizing: border-box;
}
@media screen and (min-width: 768px) {
	.img-gallery {
		margin: 4em 0;
	}
	.img-gallery.col02 img {
		width: 50%;
	}
	.img-gallery.col03 img {
		width: 33.33%;
	}
	.img-gallery.col04 img {
		width: 25%;
	}
}

/*  .arrow-list  */
.arrow-list {
	display: flex;
	flex-wrap: wrap;
	margin: 2em 0;
}
.arrow-list li {
	width: 100%;
	padding: 0.5em;
	box-sizing: border-box;
}
.arrow-list li a {
	position: relative;
	display: block;
	padding: 0 0 0 1em;
}
.arrow-list li a:before {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	display: block;
	content: "";
	width: 0;
	height: 0;
	margin: auto;
	border: 5px solid transparent;
	border-left: 5px solid #FFB300;
}
@media screen and (min-width: 768px) {
	.arrow-list li {
		width: 33.33%;
	}
}

/*  .address-list  */
.address-list {
	display: flex;
	flex-wrap: wrap;
}
.address-list li {
	width: 100%;
	padding: 0.5em;
	box-sizing: border-box;
}
.address-list li a {
	display: block;
	padding: 1em;
	border-radius: 10px;
	background-color: #ffffff;
	box-sizing: border-box;
}
.address-list li a strong {
	display: flex;
	align-items: center;
	font-size: 1.25em;
}
.address-list li a strong:before {
	flex-shrink: 0;
	content: "";
	display: block;
	width: 1em;
	height: 2em;
	margin: 0 0.5em 0 0;
	background-image: url(/img/company/pin.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
.address-list li a span b {
	display: block;
}
@media screen and (min-width: 768px) {
	.address-list li {
		width: 33.33%
	}
}

/*  .history  */
.history {
	position: relative;
	margin: 2em 0;
}
.history:before {
	position: absolute;
	top: 49.25px;
	left: 10px;
	content: "";
	display: block;
	width: 3px;
	height: 100%;
	background-color: #F0E8D9;
}
.history li+li {
	margin: 2em 0 0 0;
}
.history li strong {
	position: relative;
	padding: 0.5em 0.5em 0.5em 70px;
	background-image: url(/img/company/deco.jpg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: right center;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 2.5em;
	font-weight: 900;
	box-sizing: border-box;
}
.history li strong:before {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	content: "";
	display: block;
	width: 60px;
	height: 3px;
	margin: auto;
	background-color: #FFB300;
}
.history li strong:after {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	margin: auto;
	border-radius: 9999px;
	background-color: #FFB300;
}
.history li strong small {
	font-size: 0.6em;
}
.history li span {
	display: block;
	padding: 0 0 0 70px;
	font-size: 1.25em;
	font-weight: bold;
	box-sizing: border-box;
}
@media screen and (min-width: 768px) {
	.history:before {
		top: 49.25px;
		left: 0;
		right: 0;
		margin: auto;
	}
	.history li {
		width: 50%;
	}
	.history li:nth-of-type(odd) {
		margin-left: 10px;
		margin-right: calc(50% - 10px);
		text-align: right;
	}
	.history li:nth-of-type(odd) strong {
		padding: 0.5em 70px 0.5em 0.5em;
		background-position: left center;
	}
	.history li:nth-of-type(odd) strong:before {
		position: absolute;
		top: 0;
		left: auto;
		right: 0;
		bottom: 0;
	}
	.history li:nth-of-type(odd) strong:after {
		position: absolute;
		top: 0;
		left: auto;
		right: 0;
		bottom: 0;
	}
	.history li:nth-of-type(odd) span {
		padding: 0 70px 0 0;
	}
	.history li:nth-of-type(even) {
		margin-left: calc(50% - 10px);
	}
}
