@charset "UTF-8";

html {
    font-size: 62.5%;
	-webkit-backface-visibility: hidden;
    backface-visibility: hidden;
	-webkit-font-smoothing: antialiased;
}

body {
    font-size: 1.6rem;
	font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    line-height: 1.5;
	letter-spacing: 0;
	background-color: #FFF;
	padding-top: 0;
}

a {
	color: #121212;
    outline: 0;
    outline: none;
    text-decoration: none;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    -webkit-transition: 0.2s ease-in-out;
    -ms-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}

a:hover {
    color: #065FFF;
    outline: 0;
    outline: none;
    text-decoration: none;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    -webkit-transition: 0.2s ease-in-out;
    -ms-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}

a[href^="tel:"] { 
	cursor: default;
}

img {
    vertical-align: middle;
    border-style: none;
    max-width: 100%;
    height: auto;
}

img.img-fluid {
    vertical-align: middle;
    border-style: none;
    max-width: 100%;
    height: auto;
}

.container, .container-lg, .container-md, .container-sm, .container-xl {
	max-width: 100%;
	padding-right: 0rem;
	padding-left: 0rem;
}

@media (min-width: 1200px) {
	.container, .container-lg, .container-md, .container-sm, .container-xl {
		max-width: 100%;
		padding-right: 0rem;
		padding-left: 0rem;
	}
}

.container-100p {
    width: 100%;
	margin: 0 auto;
}

.row:before, 
.row:after { 
	width: 0;
}

.row.no-margin {
    margin-right: 0;
    margin-left: 0;
}

.row.flex {
    display: flex;
    flex-wrap: wrap;
}

.no-padding {
    padding-left: 0;
    padding-right: 0;
}

.flex-center {
    display: flex;
    align-items: center;
}

ul {
    display: block;
    list-style-type: none;
    margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 0px;
}

h1 {
    margin: 0 0;
}

h1, h2, h3, h4, h5, h6 {
    text-transform: none;
}

.fixed-top {
    z-index: 1030;
}

dt {
    font-weight: 600;
}


/* ------------------------------------------------------------------
Nav
------------------------------------------------------------------- */

.navbar-brand {
    display: inline-block;
    padding-top: 0;
    padding-bottom: 0;
    margin-right: 0;
}

#mainNav {
    background-color: #43A4C7;
}
#mainNav .navbar-brand {
	padding: 0.1rem 0;
}
#mainNav .nav-link {
	padding: 1.0rem 1.0rem;
	color: #FFF;
}

#mainNav .navbar-nav > li.nav-item > a {
    font-size: 1.6rem;
    letter-spacing: 1px;
    text-transform: uppercase;
}

@media (min-width: 499px) {
	#mainNav .nav-link {
		padding: 0.3rem 1.0rem;
	}
	#mainNav .navbar-nav > li.nav-item > a {
		font-size: 1.4rem;
	}
}

@media (min-width: 749px) {
	#mainNav .nav-link {
		padding: 1.0rem 1.0rem;
	}
	#mainNav .navbar-nav > li.nav-item > a {
		font-size: 1.5rem;
	}
}

#mainNav .navbar-toggler {
    font-size: 80%;
    padding: 0.75rem;
    color: #FFF;
    border: 1px solid #FFF;
}

@media (min-width: 992px) {
	#mainNav {
		background-color: rgba(255, 255, 255, 0.0);
	}
	.container {
		max-width: 100%;
	}
	.navbar {
		height: 80px;
		padding: 0 10px;
	}
	#mainNav .navbar-brand {
		padding: 0.9rem 0;
	}
	#mainNav .nav-link {
		padding: 1.0rem 0.5rem;
	}
	#mainNav .navbar-nav > li.nav-item > a {
		font-size: 1.5rem;
	}

	#mainNav .navbar-nav > li.nav-item > a {
		font-size: 1.2rem;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 1.0;
	}

	.navbar-expand-lg>.container-100p {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}
	.navbar-expand-lg {
		display: flex;
	}
	/* .navbar-expand-lg .navbar-collapse {
		
	} */

	#mainNav .navbar-brand {
		padding: 0rem 0;
	}
	#mainNav .navbar-brand img {
		display: block;
	}
	#mainNav .nav-link {
		position: relative;
		color: #FFFFFF;
		padding: 1.5rem 0;
		margin: 1.0rem 1.0rem;
		transition: all .4s ease-out;
	}
	#mainNav .nav-link::before {
		content: '';
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		border-top: 2px solid #FFFFFF;
		-webkit-transform-origin: left;
		transform-origin: left;
		-webkit-transform: scale(0, 1);
		transform: scale(0, 1);
		-webkit-transition: all .25s;
		transition: all .25s;
	}
	#mainNav .nav-link:hover {
		color: #FFFFFF;
	}
	#mainNav .nav-link:hover:before, 
	#mainNav .nav-link:active:before {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	
	#mainNav .nav-link.gnav-contact {
		margin-top: 1.0rem;
		margin-bottom: 1.0rem;
		margin-left: 2.0rem;
		padding: 1.5rem 2.0rem 1.5rem 2.5rem;
		color: #FFF;
		background: linear-gradient(180deg, rgba(226, 84, 130, 1.0), rgba(159, 0, 52, 1.0));
		transition: all .4s ease-out;
	}
	#mainNav .nav-link.gnav-contact::before {
		content: '';
		display: none;
	}
	#mainNav .nav-link.gnav-contact:hover {
		color: #FFF;
		background: linear-gradient(180deg, #666666, #121212);
	}

	#mainNav.navbar-shrink {
		background-color: #43A4C7;
	}
	#mainNav.navbar-shrink .navbar-brand img {
		display: block;
	}
	#mainNav.navbar-shrink .nav-link {
		position: relative;
		color: #F5F5F5;
		padding: 1.5rem 0;
		margin: 1.0rem 1.0rem;
		transition: all .4s ease-out;
		border-bottom: 0rem solid transparent;
	}
	#mainNav.navbar-shrink .nav-link::before {
		content: '';
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		border-top: 2px solid #FFF;
		-webkit-transform-origin: left;
		transform-origin: left;
		-webkit-transform: scale(0, 1);
		transform: scale(0, 1);
		-webkit-transition: all .25s;
		transition: all .25s;
	}
	#mainNav.navbar-shrink .nav-link:hover {
		color: #FFF;
	}
	#mainNav.navbar-shrink .nav-link:hover:before, 
	#mainNav.navbar-shrink .nav-link:active:before {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	#mainNav.navbar-shrink .nav-link.gnav-contact {
		margin-top: 1.0rem;
		margin-bottom: 1.0rem;
		margin-left: 2.0rem;
		padding: 1.5rem 2.0rem 1.5rem 2.5rem;
		color: #FFF;
		background: linear-gradient(180deg, rgba(226, 84, 130, 1.0), rgba(159, 0, 52, 1.0));
		transition: all .4s ease-out;
	}
	#mainNav.navbar-shrink .nav-link.gnav-contact::before {
		content: '';
		display: none;
	}
	#mainNav.navbar-shrink .nav-link.gnav-contact:hover {
		color: #FFF;
		background: linear-gradient(180deg, #666666, #121212);
	}
}

@media (min-width: 1200px) {
	.navbar {
		padding: 0 30px;
	}
	#mainNav .nav-link {
		margin: 1.0rem 1.0rem;
	}
	#mainNav .navbar-nav > li.nav-item > a {
		font-size: 1.5rem;
		letter-spacing: 0;
	}
	#mainNav.navbar-shrink .nav-link {
		margin: 1.0rem 1.0rem;
	}
}

@media (min-width: 1300px) {
	.navbar {
		padding: 0 2%;
	}
	#mainNav .nav-link {
		margin: 1.0rem 1.0rem;
	}
	#mainNav.navbar-shrink .nav-link {
		margin: 1.0rem 1.0rem;
	}
	#mainNav .navbar-nav > li.nav-item > a {
		font-size: 1.6rem;
	}
}

@media (min-width: 1380px) {
	.navbar {
		padding: 0 2%;
	}
	#mainNav .nav-link {
		margin: 1.0rem 1.0rem;
	}
	#mainNav.navbar-shrink .nav-link {
		margin: 1.0rem 1.0rem;
	}
	#mainNav .navbar-nav > li.nav-item > a {
		font-size: 1.6rem;
		letter-spacing: 0;
	}
}

@media (min-width: 1480px) {
	.navbar {
		padding: 0 2%;
	}
	#mainNav .nav-link {
		margin: 1.0rem 1.5rem;
	}
	#mainNav.navbar-shrink .nav-link {
		margin: 1.0rem 1.5rem;
	}
	#mainNav .navbar-nav > li.nav-item > a {
		font-size: 1.7rem;
		letter-spacing: 1px;
	}
}

@media (min-width: 1680px) {
	#mainNav .navbar-nav > li.nav-item > a {
		font-size: 1.9rem;
	}
	#mainNav .nav-link {
		margin: 1.0rem 2.0rem;
	}
	#mainNav.navbar-shrink .nav-link {
		margin: 1.0rem 2.0rem;
	}
}

.logo-mark-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}
.logo-mark-wrap {
    width: 70px;
	padding: 0 6px 0 0;
}
.company-name {
    font-size: 1.1vw;
    font-weight: 600;
    letter-spacing:1px;
	line-height: 1.0;
    color: #F5F5F5;
	margin: 0;
	padding: 0;
}

@media (max-width: 1680px){
	.company-name {
		font-size: 1.2vw;
	}
}
@media (max-width: 1480px){
	.company-name {
		font-size: 1.4vw;
	}
}
@media (max-width: 990px){
	.company-name {
		font-size: 2.0rem;
	}
}
@media (max-width: 749px){
	.logo-mark-wrap {
		width: 60px;
		padding: 0 6px 0 0;
	}
}
@media (max-width: 499px){
	.company-name {
		font-size: 1.8rem;
	}
}


/*------------------------------------------------------------------
[for メガメニュー]
------------------------------------------------------------------*/

/*---メガメニュー中身---*/
.sub-navi  {display: none}
.sub-navi  {position: absolute;top: 80px;left: 0;right: 0;padding: 20px 0;background: rgba(255,255,255,1.0);}
.sub-navi-item  {text-align: center}
.sub-navi-item  span:first-child{display: block;margin-bottom: 5px;}
.sub-navi-item  a{display: block;color: #006E89}
.sub-navi-item  a:hover{opacity: .8}

/*flex*/
.sub-navi  {display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-pack: distribute;justify-content: space-around;width: 100%;}
.sub-navi-item  {-ms-flex-preferred-size: 16%;flex-basis: 16%;}

@media (max-width: 991px) {
.sub-navi  {position: relative;top: 0;margin-bottom: 10px;padding: 0;background: none;border-top: 1px dotted #fff;}
.sub-navi-item  span:first-child{display: none;}
.sub-navi  {display:block}
.sub-navi-item  {text-align: left}
/* .sub-navi-item:first-child  a{} */
.sub-navi-item  a{padding: 15px 15px 15px 55px;color: #fff;border-bottom: 1px dotted #fff;}
}

@media (max-width: 750px) {.sub-navi-item  a {font-size: 1.4rem;}}

/*---メガメニューアコーディオン設定---*/
.js-summary {cursor: pointer;display: flex;flex-direction: row;align-items: center;padding:25px 1.0rem;color: #FFF;}
/* Safariで表示されるデフォルトの三角形アイコンを消します */
.js-summary::-webkit-details-marker {display: none;}

/* is-openedクラスが付与されたときのスタイル */
details.is-opened .icon {transform: rotate(180deg);}

/*フォントサイズを揃える*/
.js-summary {font-size: 1.6rem;letter-spacing: 1px;text-transform: uppercase;}
@media (min-width: 499px) {.js-summary {font-size: 1.4rem;}}
@media (min-width: 749px) {.js-summary {font-size: 1.5rem;}}
@media (min-width: 992px) {.js-summary {font-size: 1.2rem;font-weight: 500;letter-spacing: 1px;line-height: 1.0;}}
@media (min-width: 1200px) {.js-summary {font-size: 1.5rem;letter-spacing: 0;}}
@media (min-width: 1300px) {.js-summary{font-size: 1.6rem;}}
@media (min-width: 1380px) {.js-summary {font-size: 1.6rem;letter-spacing: 0;}}
@media (min-width: 1480px) {.js-summary {font-size: 1.7rem;letter-spacing: 1px;}}
@media (min-width: 1680px) {.js-summary {font-size: 1.9rem;}}

/* アイコンのスタイル */
.icon {display: none;}
.icon {display: block;position: relative;width: 24px;margin-right: 10px;flex-shrink: 0;transform-origin: center 43%;transition: transform 0.4s;}
.icon::before,.icon::after {content: "";position: absolute;display: block;width: 15px;height: 3px;background-color: #70d0e8;}
.icon::before {left: 0;transform: rotate(45deg);}
.icon::after {right: 0;transform: rotate(-45deg);}

/*アコーディオンの中身 */
.content {overflow: hidden;}
.content_inner {display: flex;flex-direction: column;gap: 16px;}
/* details直下のタグにpaddingを設定すると挙動がおかしくなるので、.contentには指定しない */



/*------------------------------------------------------------------
[Home Hero]
*/

#hero {
    position: fixed;
    width: 100%;
    height: 100vh;
    background-color: #FFF;
	padding: 0;
    z-index: -1;
}

#hero video {
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /*縦横幅指定*/
    width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
}


/*--------------------------------
[Home Hero Copy]
*/
.home-copy-section {
	position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
	width: 100%;
	height: 100vh;
	padding: 0;
}
.home-diagonal-content {
	position: absolute;
	top: 0;
	left: -10%;
    display: block;
    width: 35%;
    height: 100vh;
	background: linear-gradient(90deg, rgba(0, 110, 137, 0.9), rgba(103, 187, 223, 0.9));
    -webkit-transform: skew(17deg);
    transform: skew(17deg);
	padding: 0;
}
.home-copy-wrap {
	position: absolute;
	top: 0;
	left: 12%;
	display: flex;
	flex-direction: column;
	justify-content: center;
    height: 100vh;
    margin: 0;
	padding: 0;
}
.home-copy-title {
	display: block;
    font-size: 6.0vw;
    font-weight: 700;
	font-family: 'Noto Serif JP', serif;
    letter-spacing: 0.5vw;
	line-height: 1.2;
    color: #F5F5F5;
    text-shadow: 3px 3px 5px #000000;
    margin: 0;
	padding: 0 0 8%;
}
.home-copy-title span {
	display: block;
    margin: 0;
	padding: 0;
}
.home-copy-subtitle {
	display: block;
    font-size: 1.2vw;
    font-weight: 700;
    letter-spacing: 2px;
	line-height: 1.4;
    color: #F5F5F5;
    text-shadow: 2px 2px 3px #000000;
    margin: 0;
	padding: 0 0 10%;
}
.home-copy-subtitle br.br {
	display: none;
}

/*--------------------------------
[Home Hero Trouble]
*/

.home-trouble-section {position: absolute;bottom: 8%;right: 5%;display: flex;flex-direction: column;justify-content: flex-end;align-items: baseline;margin: 0;padding: 0;}

.home-trouble-title {display: block;margin: 0 0 10px;padding: 0 0 20px 10px;color: #F5F5F5;font-size: 1.1vw;font-weight: 600;font-family: 'Noto Serif JP', serif;text-shadow: 2px 2px 4px #000000;line-height: 1.4;letter-spacing: 1px;}

.home-trouble-subtitle {
	display: inline-block;
    font-size: 1.1vw;
    font-weight: 600;
	font-family: 'Noto Serif JP', serif;
    letter-spacing: 2px;
	line-height: 1.0;
    color: #121212;
    -webkit-transform: skew(-17deg);
    transform: skew(-17deg);
    margin: 0 0 15px;
	padding: 8px 15px;
	background-color: #F5F5F5;
}
.home-trouble-footer-title {
	display: block;
    font-size: 1.2vw;
    font-weight: 600;
	font-family: 'Noto Serif JP', serif;
    letter-spacing: 1px;
	line-height: 1.4;
    color: #F5F5F5;
    text-shadow: 3px 3px 5px #000000;
    margin: 0;
	padding: 15px 0 0 10px;
}

@media (max-width: 1200px){
	.home-diagonal-content {
		left: -11%;
	}
}
@media (max-width: 990px){	
	.home-diagonal-content {
		left: -20%;
		width: 45%;
	}
	.home-copy-wrap {
		top: 25%;
		left: 12%;
		display: block;
		height: auto;
	}
	.home-copy-title {
		font-size: 7.2rem;
		letter-spacing: 4px;
		padding: 0 0 4%;
	}
	.home-copy-subtitle {
		font-size: 2.0rem;
		letter-spacing: 1px;
		padding: 0;
	}

.home-trouble-title {font-size: 2.0rem;}

	.home-trouble-subtitle {
		font-size: 1.8rem;
	}
	.home-trouble-footer-title {
		font-size: 2.0rem;
	}
}
@media (max-width: 749px){
	.home-copy-title {
		font-size: 6.0rem;
		letter-spacing: 2px;
		padding: 0 0 4%;
	}
	.home-copy-subtitle {
		font-size: 1.8rem;
		letter-spacing: 0;
	}

.home-trouble-section {position: relative;bottom: auto;right: auto;background-color: #FFF;padding: 5% 6%;}

.home-trouble-title	 {padding: 0 0 20px 10px;color: #121212;font-size: 2.0rem;text-shadow: 0px 0px 0px #000000;}

	.home-trouble-subtitle {
		font-size: 2.0rem;
		background-color: #F0F0F0;
	}
	.home-trouble-footer-title {
		color: #121212;
		text-shadow: 0px 0px 0px #000000;
		padding: 20px 0 0 10px;
	}
}
@media (max-width: 499px){
	.home-diagonal-content {
		left: -27.5%;
		width: 70%;
	}
	.home-copy-wrap {
		top: 30%;
		left: 11%;
	}
	.home-copy-subtitle br.br {
		display: block;
	}

.home-trouble-section {display: flex;padding: 8% 6%;}
	
.home-trouble-title {width: 100%;padding: 0 10px 20px 10px;font-size: 1.8rem;line-height: 1.6;text-align: left;}
.home-trouble-title br {display: none;}

	.home-trouble-subtitle {
		font-size: 1.8rem;
		line-height: 1.4;
		margin: 0 0 10px;
		-webkit-transform: skew(0deg);
		transform: skew(0deg);
	}
	.home-trouble-footer-title {
		font-size: 1.8rem;
		letter-spacing: 0;
		line-height: 1.6;
		padding: 5% 10px 0 10px;
	}
	.home-trouble-footer-title br {
		display: none;
	}
}


/*-------------------------------
  Home main right text
--------------------------------- */
.home-rightside-section {position: absolute;bottom: 20%;right: 5%;display: flex;flex-direction: column;justify-content: flex-end;align-items: baseline;margin: 0;padding: 0;}
.home-rightside-text {display: block;margin: 0;padding: 0;color: #F5F5F5;font-family: 'Noto Serif JP', serif;font-size: 2.2vw;font-weight: 600;line-height: 1.4;letter-spacing: 1px;text-shadow: 3px 3px 5px #000;}

@media (max-width: 990px){
.home-rightside-text {font-size: 2.0rem;}
}

@media (max-width: 749px){

}

@media (max-width: 499px){
.home-rightside-section {bottom: 10%;left: 12%;right: 10%;}
.home-rightside-text br {display: none;}
}

/*---------------------------------------
 ものづくりメーカー様のお困りごとを解決します
----------------------------------------- */

/* 共通スタイル */
.home-main-catch {
    background: #fff;
}
.home-main-catch-inner {
    padding: 4% 5%;
}

/* タイトルのスタイル */
.home-main-catch-title {
    padding: 0 0 40px 0;
    color: #1c799a;
    font-family: 'Noto Serif JP', serif;
    font-size: 2.3vw;
    font-weight: 800;
    text-align: center;
}
.home-main-catch-title br {
    display: none;
}

/* コンテンツラッパー */
.home-main-catch-illust-wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 2%;
}

/* PC表示用のコンテンツ */
.home-main-catch-illust-wrap.pc-only {
    /* PC表示時のみ表示される */
}

/* スマホ表示用のスライダーコンテナ */
.home-slider-container {
    display: none; /* 初期状態では非表示 */
}

/* コンテンツボックス */
.home-main-catch-illust {
    flex-basis: 22%;
    position: relative;
    padding-bottom: 15%;
}
.home-main-catch-illust .silhouette {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0;
    padding: 0 8%;
}

/* 吹き出し */
.balloon {
    position: relative;
    margin: 0 0 3.5em 0;
    padding: 20px;
    background: #dce8ed;
    border-radius: 10px;
}
.balloon:after {
    position: absolute;
    left: 15px;
    bottom: -25px;
    width: 20px;
    height: 18px;
    background: #dce8ed;
    content: "";
    border-radius: 50%;
}
.balloon:before {
    position: absolute;
    left: 30px;
    bottom: -42px;
    width: 13px;
    height: 12px;
    background: #dce8ed;
    border-radius: 50%;
    content: "";
}
.balloon p {
    min-height: 6em;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0;
}

/* サブタイトルとテキスト */
.home-aboutus {
    margin-bottom: 2%;
    padding: 7px;
    border: 2px solid #43A4C7;
    color: #43A4C7;
    font-family: 'Noto Serif JP', serif;
    font-size: 1.7vw;
    font-weight: 900;
    text-align: center;
}
.home-aboutus br {
    display: none;
}
.home-aboutus-text {
    font-family: 'Noto Serif JP', serif;
    font-size: 1.6vw;
    font-weight: 900;
    text-align: center;
}

/* メディアクエリ：タブレットサイズ以下 */
@media (max-width: 990px) {
    .home-main-catch-inner {
        padding: 6% 5%;
    }

    .home-main-catch-illust-wrap {
        margin-bottom: 0;
    }

    .home-main-catch-title {
        font-size: 4vw;
    }
    .home-aboutus {
        font-size: 3vw;
    }
    .home-aboutus-text {
        font-size: 2.3vw;
    }

    .home-main-catch-illust {
        flex-basis: 48%;
        margin-bottom: 2%;
        padding-bottom: 32%;
    }

    .home-main-catch-illust .silhouette {
        padding: 0 10%;
    }
    .balloon p {
        min-height: 5em;
    }
}

/* メディアクエリ：スマホサイズ以下 */
@media (max-width: 768px) {
    /* PC表示用のコンテンツを非表示 */
    .pc-only {
        display: none;
    }

    /* スマホ用のスライダーを表示 */
    .home-slider-container {
        display: block;
        position: relative;
        overflow: hidden;
        width: 100%;
    }

    .home-slider-wrapper {
        display: flex;
        transition: transform 0.5s ease;
        will-change: transform;
        flex-wrap: nowrap;
        width: 100%;
    }

    .home-slider-slide {
        flex: 0 0 100%;
        max-width: 100%;
        margin: 0;
        transition: transform 0.5s ease, opacity 0.5s ease;
        transform-origin: center;
    }

    /* ナビゲーションのスタイル */
    .home-slider-navigation {
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 0 40px 0;
        gap: 10px;
    }

    .home-slider-prev,
    .home-slider-next {
        width: 30px;
        height: 30px;
        background-color: #EDF6F8;
        border: none;
        border-radius: 50%;
        cursor: pointer;
        position: relative;
        transition: background-color 0.3s ease;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .home-slider-prev::before,
    .home-slider-next::before {
        content: '';
        display: block;
        width: 0;
        height: 0;
        border-style: solid;
    }

    .home-slider-prev::before {
        border-width: 5px 7px 5px 0;
        border-color: transparent #43A4C7 transparent transparent;
    }

    .home-slider-next::before {
        border-width: 5px 0 5px 7px;
        border-color: transparent transparent transparent #43A4C7;
    }

    .home-slider-prev:hover,
    .home-slider-next:hover {
        background-color: #D6EBF0;
    }

    /* ページネーションのスタイル */
    .home-slider-pagination {
        display: flex;
        justify-content: center;
        gap: 12px;
        margin: 0;
    }

    .home-slider-pagination > span {
        width: 10px;
        height: 10px;
        background-color: #ccc;
        border-radius: 50%;
        cursor: pointer;
        transition: background-color 0.3s ease;
    }

    .home-slider-pagination > span.active {
        background-color: #43A4C7;
    }

    .home-slider-pagination > span:hover {
        background-color: #1C799A;
    }

    /* その他のスタイル調整 */
    .home-main-catch-title {
        font-size: 6.5vw;
        line-height: 1.4;
    }
    .home-main-catch-title br {
        display: inline;
    }
    .balloon {
        margin: 0;
    }
    .balloon p {
        min-height: auto;
    }
    .home-slider-slide .silhouette {
        position: relative;
        padding: 0 15% 5%;
    }
    .home-aboutus-text {
        font-size: 4vw;
        text-align: left;
    }
    .home-aboutus-text br {
        display: none;
    }
    .home-aboutus {
        font-size: 5vw;
    }
    .home-aboutus br {
        display: inline;
    }
}








/* ------------------------------------------------------------------
 Home About Left
------------------------------------------------------------------- */
.home-product-area-left {
    position: relative;
    display: flex;
    background-color: #FFF;
    overflow: hidden;
}

.home-product-area-wrapper {
    display: flex;
    height: 100%;
}
.home-product-area-wrap {
	position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: calc(100% - 50px);
	margin: 25px 0;
	padding: 0 0 0 6%;
    background-color: rgba(0, 110, 137, 1.0);
    z-index: 2;
}
.home-product-area-wrap::before {
    content: "";
    position: absolute;
    top: 0;
    right: -22%;
    display: block;
	background: linear-gradient(90deg, rgba(0, 110, 137, 1.0), rgba(103, 187, 223, 1.0));
    width: 100%;
    height: 100%;
    -webkit-transform: skew(17deg);
	transform: skew(17deg);
    z-index: -1;
    pointer-events: none;
}

.home-product-area-left .title-wrap {
    position: relative;
    text-align: left;
    margin-bottom: 4%;
    z-index: 1;
}
.home-product-area-left .title-wrap > h2 {
	font-size: 2.4rem;
    font-weight: 400;
	font-family: 'Oswald', sans-serif;
    color: #FFF;
    margin-bottom: 1%;
}
.home-product-area-left .title-wrap > h2 span {
	display: inline-block;
    font-size: 6.0rem;
	font-family: 'Oswald', sans-serif;
	padding: 0 0 0 10px;
}
.home-product-area-left .title-wrap > h3 {
	display: inline-block;
    font-size: 2.8vw;
    font-weight: 600;
	font-family: 'Noto Serif JP', serif;
    letter-spacing: 5px;
	line-height: 1.0;
    color: #FFF;
	text-shadow: 3px 3px 5px #000000;
    margin: 0;
	padding: 8px 0 0;
}
.home-product-area-left .title-wrap > h3 br {
	display: none;
}
.home-product-area-left .text-wrap {
    position: relative;
    margin-bottom: 4%;
    z-index: 1;
}
.home-product-area-left .text-wrap-inner {
    margin-left: 0;
}
.home-product-area-left .text-wrap-inner > h5 {
	width: 100%;
    font-size: 1.6rem;
    font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 1px;
	line-height: 1.8;
    color: #FFF;
	text-align: left;
	margin: 0;
}

/* Home About image
 * --------------------------------------- */
.home-img-wrap {
	position: relative;
    text-align: center;
    margin: 0;
    padding: 0;
    overflow: hidden;
}
.home-img-wrap a img {
    display: block;
    max-width: 100%;
    min-width: 100%;
    height: auto;
    -webkit-transition: 0.9s ease;
    transition: 0.9s ease;
    overflow: hidden;
}
.home-img-wrap a img:hover {
    -webkit-transform: scale(1.2, 1.2);
    -ms-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2);
}

@media (max-width: 1680px){
	.home-product-area-left .title-wrap {
		margin-bottom: 4%;
	}
	.home-product-area-left .text-wrap-inner > h5 {
		margin: 0;
	}
}
@media (max-width: 1480px){
	.home-product-area-wrap {
		height: calc(100% - 30px);
		margin: 15px 0;
	}
	.home-product-area-left .title-wrap {
		margin-bottom: 4%;
	}
	.home-product-area-left .text-wrap {
		margin-bottom: 4%;
	}
	.home-product-area-left .text-wrap-inner > h5 {
		font-size: 1.5rem;
		letter-spacing: 0;
		line-height: 1.5;
	}
}
@media (max-width: 1200px){
	.home-product-area-wrap {
		height: calc(100% - 30px);
		margin: 15px 0;
	}
	.home-product-area-left .title-wrap > h2 span {
		font-size: 3.0rem;
	}
	.home-product-area-left .text-wrap-inner > h5 {
		font-size: 1.2rem;
		line-height: 1.4;
	}
}
@media (max-width: 990px){
	.home-product-area-wrapper {
		display: block;
		height: auto;
	}
	.home-product-area-wrap {
		padding: 8% 6%;
		background: linear-gradient(90deg, #006E89, #43A4C7);
	}
	.home-product-area-wrap::before {
		display: none;
	}
	.home-product-area-left .title-wrap > h2 span {
		font-size: 4.8rem;
	}
	.home-product-area-left .title-wrap > h3 {
		font-size: 3.0rem;
	}
	.home-product-area-left .text-wrap {
		margin-bottom: 5%;
	}
	.home-product-area-left .text-wrap-inner > h5 {
		width: 100%;
		font-size: 1.6rem;
		line-height: 1.5;
	}
}
@media (max-width: 749px){
	.home-product-area-left .text-wrap-inner > h5 br {
		display: none;
	}

	.sp-br {
		display: block;
	}

}
@media (max-width: 499px){
	.home-product-area-wrap {
		padding: 10% 8% 12%;
		margin: 10px 0;
	}

	.sp-br {
		display: block in !important;
	}

	.home-product-area-left .title-wrap {
		text-align: center;
		margin-bottom: 20px;
		padding: 0;
	}
	.home-product-area-left .title-wrap > h2 {
		margin-bottom: 5%;
	}
	.home-product-area-left .title-wrap > h3 {
		display: block;
		font-size: 3.0rem;
		letter-spacing: 1px;
		line-height: 1.4;
		text-align: center;
		padding: 6px 0;
	}
	.home-product-area-left .title-wrap > h3 br {
		display: block;
	}
	.home-product-area-left .text-wrap {
		margin-bottom: 30px;
	}
	.home-product-area-left .text-wrap-inner > h5 {
		width: 100%;
		font-size: 1.6rem;
		line-height: 1.6;
		text-align: left;
	}
}


/* ------------------------------------------------------------------
 Home About Right
------------------------------------------------------------------- */

.home-product-area-right {
    position: relative;
    display: flex;
    background-color: #FFF;
    overflow: hidden;
}
.pt-20 {
	padding-top: 25px;
}
.pb-20 {
	padding-bottom: 25px;
}

.home-product-area-wrapper-right {
    display: flex;
	flex-direction: row-reverse;
	align-items: stretch;
    height: 100%;
}
.home-product-area-wrap-right {
	position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: calc(100% - 50px);
	margin: 25px 0;
	padding: 0 6% 0 0;
    background-color: rgba(0, 110, 137, 1.0);
    z-index: 2;
}
.home-product-area-wrap-right::before {
    content: "";
    position: absolute;
    top: 0;
    left: -22%;
    display: block;
	background: linear-gradient(90deg, rgba(103, 187, 223, 1.0), rgba(0, 110, 137, 1.0));
    width: 100%;
    height: 100%;
    -webkit-transform: skew(17deg);
	transform: skew(17deg);
    z-index: -1;
    pointer-events: none;
}

.home-product-area-right .title-wrap {
    position: relative;
    text-align: right;
    margin-bottom: 4%;
    z-index: 1;
}
.home-product-area-right .title-wrap > h2 {
	font-size: 2.4rem;
    font-weight: 400;
	font-family: 'Oswald', sans-serif;
    color: #FFF;
    margin-bottom: 1%;
}
.home-product-area-right .title-wrap > h2 span {
	display: inline-block;
    font-size: 6.0rem;
	font-family: 'Oswald', sans-serif;
	padding: 0 0 0 10px;
}
.home-product-area-right .title-wrap > h3 {
	display: inline-block;
    font-size: 2.8vw;
    font-weight: 600;
	font-family: 'Noto Serif JP', serif;
    letter-spacing: 5px;
	line-height: 1.0;
    color: #FFF;
	text-shadow: 3px 3px 5px #000000;
    margin: 0;
	padding: 8px 0 0;
}
.home-product-area-right .title-wrap > h3 br {
	display: none;
}
.home-product-area-right .title-wrap > h3.first {
    font-size: 2.4vw;
    letter-spacing: 0px;
}
.home-product-area-right .text-wrap {
    position: relative;
    margin-bottom: 4%;
    z-index: 1;
}
.home-product-area-right .text-wrap-inner {
    margin-left: 0;
}
.home-product-area-right .text-wrap-inner > h5 {
	width: 100%;
    font-size: 1.6rem;
    font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 1px;
	line-height: 1.8;
    color: #FFF;
	text-align: right;
	margin: 0;
}

@media (max-width: 1680px){
	.home-product-area-right .title-wrap {
		margin-bottom: 4%;
	}
	.home-product-area-right .text-wrap-inner > h5 {
		margin: 0;
	}
}
@media (max-width: 1480px){
	.pt-20 {
		padding-top: 15px;
	}
	.home-product-area-wrap-right {
		height: calc(100% - 30px);
		margin: 15px 0;
	}
	.home-product-area-right .title-wrap {
		margin-bottom: 4%;
	}
	.home-product-area-right .text-wrap {
		margin-bottom: 4%;
	}
	.home-product-area-right .text-wrap-inner > h5 {
		font-size: 1.5rem;
		letter-spacing: 0;
		line-height: 1.5;
	}
}
@media (max-width: 1200px){
	.home-product-area-wrap-right {
		height: calc(100% - 30px);
		margin: 15px 0;
	}
	.home-product-area-right .title-wrap > h2 span {
		font-size: 3.0rem;
	}
	.home-product-area-right .text-wrap-inner > h5 {
		font-size: 1.2rem;
		line-height: 1.4;
	}
}
@media (max-width: 990px){
	.pt-20 {
		padding-top: 0;
	}

	.home-product-area-wrapper-right {
		display: block;
		height: auto;
	}
	.home-product-area-wrap-right {
		padding: 8% 6%;
		background: linear-gradient(90deg, #43A4C7, #006E89);
	}
	.home-product-area-wrap-right::before {
		display: none;
	}
	.home-product-area-right .title-wrap > h2 span {
		font-size: 4.8rem;
	}
	.home-product-area-right .title-wrap > h3 {
		font-size: 3.0rem;
	}
	.home-product-area-right .text-wrap {
		margin-bottom: 5%;
	}
	.home-product-area-right .title-wrap > h3.first {
		font-size: 3.0rem;
	}
	.home-product-area-right .text-wrap-inner > h5 {
		font-size: 1.6rem;
		padding-left: 0%;
	}
}
@media (max-width: 749px){
	.home-product-area-right .text-wrap-inner > h5 br {
		display: none;
	}
}
@media (max-width: 499px){
	.home-product-area-wrap-right {
		padding: 10% 8% 12%;
		margin: 10px 0;
	}
	.home-product-area-right .title-wrap {
		text-align: center;
		margin-bottom: 20px;
		padding: 0;
	}
	.home-product-area-right .title-wrap > h2 {
		margin-bottom: 5%;
	}
	.home-product-area-right .title-wrap > h3 {
		display: block;
		font-size: 3.0rem;
		letter-spacing: 1px;
		line-height: 1.4;
		text-align: center;
		padding: 6px 0;
	}
	.home-product-area-right .title-wrap > h3 br {
		display: block;
	}
	.home-product-area-right .text-wrap {
		margin-bottom: 30px;
	}
	.home-product-area-right .text-wrap-inner > h5 {
		width: 100%;
		font-size: 1.6rem;
		line-height: 1.6;
		text-align: left;
	}
}

/* Btn Left White
 * --------------------------------------- */
.linkbutton {
    display: block;
    position: relative;
    width: 180px;
    height: 40px;
    text-align: left;
	margin: 0;
    padding: 0 20px;
    background: transparent;
    line-height: 35px;
	border: solid 1px #FFF;
}
.linkbutton::before {
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-color: #FFF;
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0,1);
    -ms-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s,-webkit-transform .3s;
}
.linkbutton:hover::before {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1,1);
    -ms-transform: scale(1,1);
    transform: scale(1,1);
}
.linkbutton .text {
    display: inline-block;
    position: relative;
    font-size: 1.4rem;
    font-weight: 500;
	font-family: 'Oswald', sans-serif;
    letter-spacing: 0;
    color: #FFF;
	text-align: center;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton:hover .text {
    color: #006E89;
}
.linkbutton .arrow {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 12px;
    border-color: transparent transparent transparent #FFF;
    position: absolute;
    right: 20px;
    top: 45%;
    margin-top: -3px;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton:hover .arrow {
    border-color: transparent transparent transparent #006E89;
    right: 25px;
}

@media (max-width: 1480px){
	.linkbutton {
		width: 180px;
		height: 30px;
		padding: 0 10px;
		line-height: 27px;
	}
	.linkbutton .arrow {
		top: 37%;
	}
}
@media (max-width: 499px){
	.linkbutton {
		margin: 0 auto;
	}
}

/* Btn Left White Japan
 * --------------------------------------- */
.linkbutton-j {
    display: block;
    position: relative;
    width: 200px;
    height: 50px;
    text-align: left;
	margin: 0;
    padding: 0 20px;
    background: transparent;
    line-height: 45px;
	border: solid 1px #FFF;
}
.linkbutton-j::before {
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-color: #FFF;
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0,1);
    -ms-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s,-webkit-transform .3s;
}
.linkbutton-j:hover::before {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1,1);
    -ms-transform: scale(1,1);
    transform: scale(1,1);
}
.linkbutton-j .text {
    display: inline-block;
    position: relative;
    font-size: 1.6rem;
    font-weight: 500;
	font-family: 'Noto Serif JP', serif;
    letter-spacing: 0;
    color: #FFF;
	text-align: center;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-j:hover .text {
    color: #006E89;
}
.linkbutton-j .arrow {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 12px;
    border-color: transparent transparent transparent #FFF;
    position: absolute;
    right: 20px;
    top: 45%;
    margin-top: -3px;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-j:hover .arrow {
    border-color: transparent transparent transparent #006E89;
    right: 25px;
}

@media (max-width: 1480px){
	.linkbutton-j {
		width: 140px;
		height: 30px;
		padding: 0 10px;
		line-height: 27px;
	}
	.linkbutton-j .arrow {
		top: 37%;
	}
}
@media (max-width: 499px){
	.linkbutton-j {
		margin: 0 auto;
	}
}


/* Btn Right
 * --------------------------------------- */
.linkbutton-right {
    display: block;
    position: relative;
    width: 180px;
    height: 40px;
    text-align: left;
	margin: 0 0 0 auto;
    padding: 0 20px;
    background: ransparent;
    line-height: 35px;
	border: solid 1px #FFF;
}
.linkbutton-right::before {
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-color: #FFF;
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0,1);
    -ms-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s,-webkit-transform .3s;
}
.linkbutton-right:hover::before {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1,1);
    -ms-transform: scale(1,1);
    transform: scale(1,1);
}
.linkbutton-right .text {
    display: inline-block;
    position: relative;
    font-size: 1.4rem;
    font-weight: 500;
	font-family: 'Oswald', sans-serif;
    letter-spacing: 0;
    color: #FFF;
	text-align: center;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-right:hover .text {
    color: #006E89;
}
.linkbutton-right .arrow {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 12px;
    border-color: transparent transparent transparent #FFF;
    position: absolute;
    right: 20px;
    top: 45%;
    margin-top: -3px;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-right:hover .arrow {
    border-color: transparent transparent transparent #006E89;
    right: 25px;
}

@media (max-width: 1480px){
	.linkbutton-right {
		width: 180px;
		height: 30px;
		padding: 0 10px;
		line-height: 27px;
	}
	.linkbutton-right .arrow {
		top: 37%;
	}
}
@media (max-width: 499px){
	.linkbutton-right {
		margin: 0 auto;
	}
}


/* ------------------------------------------------------------------
 Home Works Title
------------------------------------------------------------------- */

section.home-about-title-area {
    width: 100%;
	height: auto;
	margin: 0;
	padding: 0 0 17px;
	background-color: #FFF;
    overflow: hidden;
}
.home-about-title-wrapper-reverse {
    display: flex;
	flex-direction: row-reverse;
	height: 100%;
}
.home-about-title-wrapper {
    display: flex;
	height: 100%;
}

.home-about-title-wrap {
	position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
	margin: 25px 0 33px;
	padding: 0 2% 0 6%;
	background-color: transparent;
	z-index: 2;
}
.home-about-title-wrap::before {
    content: "";
    position: absolute;
    top: 0;
    right: -18%;
    display: block;
	background: linear-gradient(-107deg, transparent 100px, rgba(103, 187, 223, 1.0) 100px, rgba(0, 110, 137, 1.0));
    width: 118%;
    height: 100%;
    z-index: -1;
    pointer-events: none;
}

.home-about-title-wrap-left {
	position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
	margin: 2.5% 0;
	padding: 0 8% 0 2%;
	background-color: #2BA529;
	z-index: 2;
}
.home-about-title-wrap-left::before {
    content: "";
    position: absolute;
    top: 0;
    left: -15%;
    display: block;
	background: linear-gradient(135deg, transparent 60px, #73C11D 60px);
    width: 115%;
    height: 100%;
    z-index: -1;
    pointer-events: none;
}

.home-about-title {
	display: block;
	font-size: 3.6rem;
    font-family: 'Oswald', sans-serif;
    font-weight: 400;
    letter-spacing: 0;
	line-height: 1.0;
	color: #FFF;
	margin: 0 0 8%;
	padding: 0;
}
.home-about-title span {
	display: block;
	font-size: 2.3rem;
    font-weight: 500;
	font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 2px;
	padding: 0 0 10px;
}
.home-about-lead-wrap {
	display: block;
	margin: 0 0 8%;
}
.home-about-title-j {
	display: block;
	font-size: 1.6vw;
    font-weight: 600;
	font-family: 'Noto Serif JP', serif;
    letter-spacing: 4px;
	line-height: 1.8;
	color: #FFF;
    text-shadow: 2px 2px 4px #000000;
	margin: 0;
	padding: 0;
}

.home-maker-list-wrap {
	margin-bottom: 6%;
}
.home-maker-list-title {
	display: block;
	font-size: 1.3vw;
    font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 1px;
	line-height: 1.0;
	color: #FFF;
	margin: 0 0 4%;
	padding: 0;
}
dl.item-maker-list {
    width: 100%;
    padding: 0;
    margin: 0 0 10px;
}
/* dl.item-maker-list dt {
} */
dl.item-maker-list dd {
	display: block;
	width: 95%;
    font-size: 1.2vw;
    font-weight: 600;
	font-family: 'Noto Serif JP', serif;
    line-height: 1.0;
    letter-spacing: 1px;
    color: #121212;
    text-align: center;
    padding: 10px 15px;
	background-color: #FFF;
}
dl.item-maker-list dd span {
    font-size: 1.0vw;
}

@media (max-width: 1480px){
	.home-about-title-j {
		font-size: 1.6vw;
		letter-spacing: 2px;
	}
	.home-maker-list-title {
		font-size: 1.3vw;
	}
	dl.item-maker-list dd {
		font-size: 1.2vw;
		letter-spacing: 1px;
	}
	dl.item-maker-list dd span {
		font-size: 1.0vw;
	}
}

/* Home Works image
 * --------------------------------------- */
.home-about-img-wrap {
	position: relative;
    text-align: center;
    margin: 0;
    padding: 0;
    overflow: hidden;
}
.home-about-img-wrap a img {
    display: block;
    max-width: 100%;
    min-width: 100%;
    height: auto;
    -webkit-transition: 0.9s ease;
    transition: 0.9s ease;
    overflow: hidden;
}
.home-about-img-wrap a img:hover {
    -webkit-transform: scale(1.2, 1.2);
    -ms-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2);
}

.home-about-img-wrap-left {
	position: relative;
    text-align: center;
    margin: 0;
    padding: 0;
    overflow: hidden;
}
.home-about-img-wrap-left a img {
    display: block;
    max-width: 100%;
    min-width: 100%;
    height: auto;
    -webkit-transition: 0.9s ease;
    transition: 0.9s ease;
    overflow: hidden;
}
.home-about-img-wrap-left a img:hover {
    -webkit-transform: scale(1.2, 1.2);
    -ms-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2);
}

.swiper-slide {
	padding: 0 0 8px;
}

@media (max-width: 1680px){
	.home-about-title-wrap {
		padding: 0 0 0 6%;
	}
	.home-about-title-wrap-left {
		padding: 0 6% 0 0;
	}
}
@media (max-width: 1480px){
	section.home-about-title-area {
		padding: 0 0 7px;
	}
	.home-about-title-wrap {
		margin: 15px 0 23px;
	}
	.home-about-lead {
		font-size: 1.4rem;
		letter-spacing: 0;
		line-height: 1.5;
		padding: 0 0 8%;
	}
}
@media (max-width: 1200px){
	section.home-about-title-area {
		padding: 0 0 15px;
	}
	.home-about-title-wrap {
		margin: 15px 0;
	}
	.home-about-title-wrap-left {
		margin: 0% 0;
	}
	.home-about-title-wrap::before {
		width: 125%;
		right: -25%;
	}
	.home-about-title-wrap-left::before {
		width: 125%;
		left: -25%;
	}
	.home-about-title-j {
		letter-spacing: 2px;
	}
	.home-about-title-j2 {
		letter-spacing: 2px;
	}
	.swiper-slide {
		padding: 0;
	}
}
@media (max-width: 990px){
	section.home-about-title-area {
		padding: 0;
	}
	.home-about-title-wrap {
		padding: 8% 6%;
	}
	.home-about-title-wrap-left {
		padding: 8% 6%;
	}
	.home-about-title {
		font-size: 3.0rem;
		margin: 0 0 5%;
	}
	.home-about-title span {
		font-size: 2.0rem;
		letter-spacing: 2px;
	}
	.home-about-lead-wrap {
		margin: 0 0 5%;
	}
	.home-maker-list-title {
		font-size: 2.0rem;
	}
	.home-about-title-j {
		font-size: 2.4rem;
	}
	.home-about-title-j2 {
		font-size: 3.0rem;
	}
	.home-about-lead {
		font-size: 1.5rem;
		padding: 0 0 5%;
	}
	dl.item-maker-list dd {
		width: 100%;
		font-size: 2.0rem;
		letter-spacing: 1px;
	}
	dl.item-maker-list dd span {
		font-size: 1.6rem;
	}
}
@media (max-width: 749px){
	.home-about-title-j {
		font-size: 2.0rem;
	}
}
@media (max-width: 499px){
	.home-about-title-wrap {
		margin: 10px 0;
		padding: 10% 8%;
		background: linear-gradient(90deg, #006E89, #43A4C7);
	}
	.home-about-title-wrap::before {
		display: none;
	}
	.home-about-title-wrap-left {
		padding: 10% 8%;
	}
	.home-about-title {
		text-align: center;
		margin: 0 0 30px;
	}
	.home-about-lead-wrap {
		margin: 0 0 10%;
	}
	.home-about-title-j {
		font-size: 2.0rem;
		letter-spacing: 0;
		line-height: 1.6;
	}
	.home-about-title-j br {
		display: none;
	}
	.home-maker-list-title {
		font-size: 1.8rem;
		line-height: 1.4;
		margin: 0 0 8%;
	}
	.home-about-title-j2 {
		font-size: 2.4rem;
		letter-spacing: 1px;
	}
	.home-about-lead {
		font-size: 1.4rem;
		padding: 0 0 30px;
	}
	dl.item-maker-list dd {
		width: 100%;
		font-size: 1.8rem;
		letter-spacing: 0;
	}
	dl.item-maker-list dd span {
		font-size: 1.5rem;
	}
}


/* ------------------------------------------------------------------
 Home Parallax
------------------------------------------------------------------- */

section.home-parallax-section {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    width: 100%;
	height: 100vh;
    overflow: hidden;
}

@media (max-width: 1200px){
	section.home-parallax-section {
		display: none;
	}
}
@media (max-width: 990px){
	section.home-parallax-section {
		display: none;
	}
}


/* ------------------------------------------------------------------
 Home Topics
------------------------------------------------------------------- */

section.home-topics-area {
    position: relative;
    width: 100%;
	margin: 0;
	padding: 5% 10%;
	background-color: #F5F5F5;
    overflow: hidden;
}

.home-news-title {
	display: block;
	font-size: 3.6vw;
    font-family: 'Oswald', sans-serif;
    font-weight: 400;
    letter-spacing: 0;
	line-height: 1.0;
	color: #43A4C7;
	text-align: center;
	margin: 0 0 8%;
	padding: 0;
}
.home-news-title span {
    display: block;
    font-size: 1.8rem;
    font-weight: 500;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 2px;
    padding: 0 0 15px;
}

.home-topics-contents-wrap {
	width: 90%;
	height: 70%;
	margin: 0 auto 5%;
	padding: 0 3% 5%;
	border-bottom: solid 1px #CCC;
}

.home-topics-date {
    align-self: center;
}
.home-topics-date span.year {
	display: block;
    font-size: 1.4rem;
	font-family: 'Roboto', sans-serif;
    line-height: 1.0;
	letter-spacing: 1px;
	color: #000;
    margin-bottom: 5px;
	padding: 0 0 0 5px;
}
.home-topics-date span.day {
	display: block;
    font-size: 2.0rem;
    font-weight: 500;
	font-family: 'Roboto', sans-serif;
    line-height: 1.0;
	letter-spacing: 1px;
	color: #000;
}

.home-topics-category {
    display: inline-block;
    font-size: 1.3rem;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    line-height: 1.0;
    letter-spacing: 0;
    color: #FFF;
    align-self: center;
    padding: 5px 10px;
    margin: 6% 0 0;
    background-color: #006E89;
    border: solid 1px #006E89;
}

h3.home-topics-title a {
    display: block;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 1px;
    color: #000;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    -webkit-transition: 0.2s ease-in-out;
    -ms-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}
h3.home-topics-title a:hover {
    color: #034F84;
}

@media (max-width: 1200px){
	section.home-topics-area {
		padding: 5% 5%;
	}
	.home-topics-category {
		font-size: 1.2rem;
		padding: 5px 8px;
	}
}
@media (max-width: 990px){
	.home-topics-contents-wrap {
		width: 100%;
		height: auto;
		margin: 0 auto 5%;
		padding: 0 3% 5%;
	}
	.home-topics-category {
		margin: 3% 0 0;
	}
}
@media (max-width: 499px){
	.home-topics-category {
		margin: 5% 0 0;
	}
}

/* Btn Center
 * --------------------------------------- */
.linkbutton-center {
    display: block;
    position: relative;
    width: 160px;
    height: 40px;
    text-align: left;
	margin: 3% auto 0;
    padding: 0 20px;
    background: transparent;
    line-height: 35px;
	border: solid 1px #006E89;
}
.linkbutton-center::before {
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-color: #006E89;
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0,1);
    -ms-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s,-webkit-transform .3s;
}
.linkbutton-center:hover::before {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1,1);
    -ms-transform: scale(1,1);
    transform: scale(1,1);
}
.linkbutton-center .text {
    display: inline-block;
    position: relative;
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: 0;
    color: #006E89;
	text-align: center;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-center:hover .text {
    color: #FFF;
}
.linkbutton-center .arrow {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 12px;
    border-color: transparent transparent transparent #006E89;
    position: absolute;
    right: 20px;
    top: 45%;
    margin-top: -3px;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-center:hover .arrow {
    border-color: transparent transparent transparent #FFF;
    right: 25px;
}

@media (max-width: 1480px){
	h3.home-topics-title a {
		font-size: 1.5rem;
		letter-spacing: 1px;
	}
}
@media (max-width: 1200px){
	h3.home-topics-title a {
		font-size: 1.4rem;
		letter-spacing: 0;
	}
}
@media (max-width: 990px){
	section.home-topics-area {
		padding-top: 5%;
		padding-bottom: 6%;
	}
	.home-news-title {
		font-size: 3.0rem;
		margin: 0 0 30px;
	}
	.home-news-title span {
		font-size: 1.6rem;
		letter-spacing: 1px;
		padding: 0 0 10px;
	}
	h3.home-topics-title a {
		font-size: 1.6rem;
		letter-spacing: 0;
		padding: 15px 0 0;
	}
}
@media (max-width: 499px){
	section.home-topics-area {
		padding-top: 10%;
		padding-bottom: 10%;
	}
	.home-news-title {
		margin: 0 0 10%;
	}
	.home-topics-slide-wrap {
		margin-bottom: 30px;
	}
	.swiper-slide-title {
		font-size: 1.6rem;
	}
}


/* ------------------------------------------------------------------
 Footer Contact
------------------------------------------------------------------- */

.footer-contact-area {
	position: relative;
	display: block;
    width: 100%;
    height: auto;
	margin: 0;
    padding: 4% 10%;
	background: linear-gradient(180deg, rgba(103, 187, 223, 1.0), rgba(0, 110, 137, 1.0));
}

.footer-subtitle-wrap {
	display: block;
	margin: 0 auto;
}

.footer-subtitle {
    display: block;
    font-size: 3.6rem;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    line-height: 1.0;
    letter-spacing: 0;
    color: #FFF;
    margin: 0;
    padding: 6px 0 0;
}
.footer-subtitle span {
    display: block;
    font-size: 1.9rem;
    font-weight: 500;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 2px;
    padding: 0 0 15px;
}

.footer-commentary-wrap {
	width: 100%;
}

.footer-commentary-01 {
    display: block;
    font-size: 1.8vw;
    font-weight: 600;
	font-family: 'Noto Serif JP', serif;
    letter-spacing: 4px;
    line-height: 1.5;
    color: #FFF;
    text-shadow: 2px 2px 4px #000000;
    margin: 1% 0 5%;
    padding: 0;
}
.footer-commentary-01 br {
	display: none;
}
.footer-commentary-02 {
    display: block;
    font-size: 1.0vw;
    font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 1px;
    line-height: 1.6;
    color: #FFF;
    margin: 0 0 5%;
    padding: 0;
}

.footer-contact-tel-wrap {
    display: block;
    margin: 0;
    padding: 0;
}
.footer-contact-tel-wrap a {
    display: block;
    font-size: 4.8vw;
    font-weight: 600;
    font-family: 'Roboto', sans-serif;
    line-height: 1.0;
    letter-spacing: 0;
    color: #FFF;
    text-align: left;
    margin: 0;
    padding: 0;
}
.footer-contact-tel-wrap a span {
    display: inline-block;
    font-size: 3.0vw;
    letter-spacing: 0;
    padding: 0 20px 0 0;
}
.footer-contact-tel-uke {
    display: block;
    font-size: 1.0vw;
    font-weight: 500;
	font-family: 'Noto Sans JP', sans-serif;
    line-height: 1.0;
    letter-spacing: 0;
    color: #FFF;
    text-align: center;
    margin: 0;
    padding: 10px 5% 0 0;
}

@media (max-width: 1480px){
	.footer-contact-area {
		padding: 4% 6%;
	}
}
@media (max-width: 990px){
	.footer-contact-area {
		padding: 8% 6%;
	}
	.footer-commentary-01 {
		font-size: 2.0rem;
		letter-spacing: 2px;
		margin: 5% 0 5%;
	}
	.footer-commentary-02 {
		font-size: 1.6rem;
		letter-spacing: 1px;
		margin: 0 0 5%;
	}
	.footer-commentary-02 br {
		display: none;
	}
	.footer-contact-tel-wrap {
		margin: 0 0 6%;
	}
	.footer-contact-tel-wrap a {
		font-size: 7.2vw;
		text-align: center;
	}
	.footer-contact-tel-wrap a span {
		font-size: 4.8vw;
		padding: 0 20px 0 0;
	}
	.footer-contact-tel-uke {
		font-size: 2.0vw;
		padding: 10px 0 0 0;
	}
}
@media (max-width: 499px){
	.footer-contact-area {
		padding: 10% 8%;
	}
	.footer-subtitle {
		font-size: 3.0rem;
		text-align: center;
		padding: 0 0 10%;
	}
	.footer-commentary-01 {
		font-size: 1.8rem;
		letter-spacing: 0;
		margin: 0 0 8%;
	}
	.footer-commentary-02 {
		font-size: 1.6rem;
		letter-spacing: 0;
		margin: 0 0 8%;
	}
	.footer-contact-tel-wrap {
		margin: 0 0 8%;
	}
	.footer-contact-tel-wrap a {
		font-size: 9.6vw;
		text-align: center;
	}
	.footer-contact-tel-wrap a span {
		font-size: 7.2vw;
		padding: 0 10px 0 0;
	}
	.footer-contact-tel-uke {
		font-size: 1.4rem;
		padding: 10px 0 0 0;
	}
}


/* Footer Contact Btn
 * --------------------------------------- */
 
 .footer-right-btn-up {
    display: block;
	margin: 0 auto 15px;
    padding: 0;
} 
 .footer-right-btn-down {
    display: block;
	margin: 0 auto;
    padding: 0;
}

.linkbutton-footer {
    display: block;
    position: relative;
    width: 100%;
    height: 60px;
    text-align: left;
	margin: 0 auto;
    padding: 0 20px;
	background: linear-gradient(180deg, rgba(226, 84, 130, 1.0), rgba(159, 0, 52, 1.0));
    line-height: 55px;
	border: solid 1px #FFF;
}
.linkbutton-footer::before {
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
	background: linear-gradient(180deg, #666666, #121212);
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0,1);
    -ms-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s,-webkit-transform .3s;
}
.linkbutton-footer:hover::before {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1,1);
    -ms-transform: scale(1,1);
    transform: scale(1,1);
}
.linkbutton-footer .text {
    display: inline-block;
    position: relative;
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0;
    color: #FFF;
	text-align: center;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-footer:hover .text {
    color: #FFF;
}
.linkbutton-footer .arrow {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 12px;
    border-color: transparent transparent transparent #FFF;
    position: absolute;
    right: 20px;
    top: 45%;
    margin-top: -3px;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-footer:hover .arrow {
    border-color: transparent transparent transparent #FFF;
    right: 25px;
}

@media (max-width: 1480px){
	.footer-right-btn-up {
		margin: 0 auto 10px;
	}
	.linkbutton-footer {
		height: 50px;
		line-height: 45px;
	}
	.linkbutton-footer .text {
		font-size: 1.6rem;
	}
}
@media (max-width: 1200px){
	.linkbutton-footer {
		padding: 0 10px;
	}
	.linkbutton-footer .text {
		font-size: 1.2rem;
	}
}
@media (max-width: 990px){
	.linkbutton-footer {
		padding: 0 20px;
	}
	.linkbutton-footer .text {
		font-size: 1.4rem;
		letter-spacing: 1px;
	}
}


/* ------------------------------------------------------------------
 Footer
------------------------------------------------------------------- */

.footer-contents-wrapper {
	display: block;
    width: 100%;
    height: auto;
    padding: 5% 8% 4%;
	background-color: #F5F5F5;
}

.footer-logo-mark-wrapper {
    display: flex;
    align-items: center;
	margin-bottom: 4%;
}
.footer-logo-mark-wrap {
    width: 80px;
    padding: 0 10px 0 0;
}
.footer-company-name {
    font-size: 3.0rem;
    font-weight: 600;
    letter-spacing: 1px;
    line-height: 1.0;
    color: #000;
    margin: 0;
    padding: 0;
}

.footer-name-wrap {
    display: block;
	width: 95%;
	margin: 0 0 5%;
  	padding: 0;
}
.footer-name-wrap-d {
    display: block;
	width: 95%;
	margin: 0 0 5%;
  	padding: 0;
}
.footer-names {
    display: block;
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 2px;
  	color: #000;
	margin: 0;
  	padding: 0 0 20px;
}
.footer-address {
    display: block;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 1px;
  	color: #000;
	margin: 0;
  	padding: 0 0 20px;
}
.footer-address span.footer-gmap {
    display: block;
    margin: 0;
    padding: 5px 0 0;
}
.footer-address span.footer-gmap a {
    font-size: 1.2rem;
    font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 0;
  	color: #000;
	padding: 0;
}
.footer-address span.footer-gmap a:hover {
  	color: #559E45;
}
.footer-tel-wrap {
    display: block;
	margin: 0 0 10px;
  	padding: 0;
}
.footer-tel-wrap a {
    font-size: 1.8vw;
    font-weight: 600;
    font-family: 'Roboto', sans-serif;
    line-height: 1.0;
    letter-spacing: 0;
  	color: #000;
	margin: 0;
  	padding: 0 0 5px;
}
.footer-tel-wrap a span {
	display: inline-block;
    font-size: 1.4vw;
  	padding: 0 10px 0 0;
}
.footer-tel-wrap a:hover {
  	color: #000;
}

@media (max-width: 1480px){
	.footer-contents-wrapper {
		padding: 5% 5% 4%;
	}
	.footer-address {
		font-size: 1.4rem;
		letter-spacing: 0;
	}
}
@media (max-width: 1200px){
	.footer-contents-wrapper {
		padding: 5% 3% 4%;
	}
	.footer-tel-wrap a {
		font-size: 1.8rem;
	}
}
@media (max-width: 990px){
	.footer-logo-mark-wrapper {
		width: 390px;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 5%;
	}
	.footer-name-wrap {
		width: 100%;
		margin: 0 0 10%;
	}
	.footer-name-wrap-d {
		width: 100%;
		margin: 0 0 10%;
	}
	.footer-names {
		letter-spacing: 1px;
		text-align: center;
	}
}
@media (max-width: 749px){
	.footer-logo-wrap span {
		font-size: 1.4rem;
	}
}
@media (max-width: 499px){
	.footer-logo-mark-wrap {
		width: 60px;
		padding: 0 10px 0 0;
	}
	.footer-company-name {
		font-size: 6.0vw;
	}
	.footer-logo-wrap span {
		font-size: 1.8rem;
	}
	.footer-name-wrap-d {
		width: 100%;
		margin: 0 0 2%;
	}
	.footer-names {
		padding: 0 0 5%;
	}
}


/* ------------------------------------------------------------------
 Footer Menu
------------------------------------------------------------------- */

.footer-menu-wrap {
	width: 100%;
	height: auto;
    text-align: left;
    padding: 0 0 5%;
}
.footer-menu-wrap .footer-menu {
    display: block;
    margin: 0;
    padding: 0;
}
.footer-menu-wrap .footer-menu li.menu-list {
    display: inline-block;
	width: 49%;
    text-align: left;
    margin: 0;
    padding: 0 0 5%;
}
.footer-menu-wrap .footer-menu li a {
    font-size: 1.5rem;
    font-weight: 500;
	line-height: 1.0;
	letter-spacing: 0;
    color: #000;
    margin: 0;
    padding: 0;
}
.footer-menu-wrap .footer-menu li a:hover, 
.footer-menu-wrap .footer-menu li a:focus {
    color: #006E89;
    text-decoration: none;
}

.footer-link-imgwrap01 {
	width: 230px;
	margin: 0;
}
.footer-link-imgwrap02 {
	width: 160px;
	margin: 0;
}
.footer-link-imgwrap03 {
	width: 300px;
	margin: 0;
}
.footer-link-imgwrap-text {
    font-size: 1.3rem;
    font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
    line-height: 1.4;
	text-align: left;
    color: #000;
}

.footer-menu-foot {
    display: block;
    margin: 30px 0;
    padding: 0;
}
.footer-menu-foot li {
    display: inline-block;
    margin: 0 20px 0 0;
    padding: 0;
}
.footer-menu-foot li a {
    font-size: 1.3rem;
    font-weight: 500;
	line-height: 1.0;
	letter-spacing: 0;
    color: #000;
    margin: 0;
    padding: 0;
}
.footer-menu-foot li a:hover, 
.footer-menu-foot li a:focus {
    color: #006E89;
    text-decoration: none;
}

.footer-copy {
    font-size: 1.3rem;
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    line-height: 1.0;
    letter-spacing: 0;
    color: #000;
    padding-top: 0;
}

@media (max-width: 1480px){
	.footer-menu-wrap .footer-menu li a {
		font-size: 1.4rem;
	}
}
@media (max-width: 1380px){
	.footer-menu-wrap .footer-menu li a {
		font-size: 1.4rem;
		letter-spacing: 0;
	}
}
@media (max-width: 1300px){
	.footer-address {
		font-size: 1.3rem;
	}
	.footer-menu-wrap .footer-menu li a {
		font-size: 1.3rem;
		letter-spacing: 0;
	}
}
@media (max-width: 1200px){
	.footer-address {
		font-size: 1.2rem;
	}
	.footer-address span.footer-gmap a {
		font-size: 1.1rem;
	}
	.footer-link-imgwrap01 {
		width: 100%;
		padding: 10px;
	}
	.footer-link-imgwrap02 {
		width: 100%;
		padding: 10px;
	}
	.footer-link-imgwrap03 {
		width: 100%;
		padding: 10px;
	}
	.footer-link-imgwrap-text {
		font-size: 1.2rem;
		padding: 0 10px;
	}
}
@media (max-width: 990px){
	.footer-logo-wrap {
		text-align: center;
		margin: 0 auto 5%;
	}
	.footer-address {
		text-align: center;
	}
	.footer-address span.footer-gmap {
		text-align: center;
	}
	.footer-tel-wrap {
		text-align: center;
	}
	.footer-tel-wrap a {
		text-align: center;
	}
	.footer-menu-wrap {
		padding: 0;
	}
	.footer-menu-wrap .footer-menu li.menu-list {
		width: 49%;
		text-align: center;
	}
	.footer-menu-foot {
		width: 320px;
		margin: 30px auto;
	}
	.footer-copy {
		text-align: center;
	}
}
@media (max-width: 749px){
	.footer-address {
		font-size: 1.2rem;
		padding: 10px 0 10px;
	}
	.footer-tel-wrap {
		margin: 0 0 5px;
	}
	.footer-tel-wrap a {
		font-size: 1.4rem;
	}
	.footer-tel-wrap a span {
		font-size: 1.2rem;
		padding: 0 5px 0 0;
	}
}
@media (max-width: 499px){
	.footer-contents-wrapper {
		padding: 10% 8%;
	}
	.footer-name-wrap {
		width: 100%;
		margin: 0 auto 10%;
	}
	.footer-logo-wrap {
		width: 270px;
		margin: 0 auto;
	}
	.footer-address {
		font-size: 1.6rem;
		line-height: 1.5;
		padding: 0 0 20px;
	}
	.footer-address span.footer-gmap a {
		font-size: 1.2rem;
	}
	.footer-tel-wrap a {
		font-size: 3.0rem;
	}
	.footer-tel-wrap a span {
		font-size: 1.8rem;
	}
	.footer-menu-wrap {
		padding: 10px 0;
	}
	.footer-menu-wrap .footer-menu li.menu-list {
		width: 49%;
		letter-spacing: 0;
		padding: 0 0 20px;
	}
	.footer-menu-wrap .footer-menu li a {
		font-size: 1.5rem;
	}
	.footer-menu-foot {
		margin: 0 0 8%;
		text-align: center;
	}
	.footer-menu-foot li {
		display: block;
		margin: 0;
		padding: 0 0 10px;
	}
	.footer-menu-foot li a {
		font-size: 1.5rem;
		letter-spacing: 0;
	}
	.footer-link-imgwrap01 {
		width: 80%;
		margin: 0 auto;
	}
	.footer-link-imgwrap02 {
		width: 60%;
		margin: 0 auto;
	}
	.footer-link-imgwrap-text {
		font-size: 1.3rem;
		padding: 0;
	}
	.footer-copy {
		font-size: 1.0rem;
	}
}


/*!------------------------------------------------------------------
[Scroll UP]
*/
.scroll-up {
    position: fixed;
    display: none;
    bottom: 0;
    right: 0;
    z-index: 9999;
}

.scroll-up a {
    display: block;
    height: 40px;
    width: 42px;
    text-align: center;
    line-height: 40px;
    font-size: 24px;
    color: #000;
    opacity: 1.0;
    background-color: #FFF;
}

.scroll-up a:hover, .scroll-up a:active {
    opacity: 1;
    color: #FFF;
    background-color: #006E89;
}

@media (max-width: 990px){
	.scroll-up {
		right: 0;
	}
	.scroll-up a {
		height: 40px;
		width: 42px;
		line-height: 40px;
		font-size: 16px;
		border-right: solid 0px #FFF;
	}
}
@media (max-width: 749px){
	.scroll-up a {
		height: 30px;
		width: 32px;
		line-height: 30px;
		font-size: 20px;
	}
}


/*------------------------------------------------------------------
[Second Hero]
*/

#second-hero {
    position: fixed;
    width: 100%;
    height: 80vh;
    background-color: #FFF;
	padding: 0;
    z-index: -1;
}
#second-hero.about {
	background-image: url(../assets/img/second-hero-about.jpg);
	background-position: center center;
}
#second-hero.works {
	background-image: url(../assets/img/second-hero-works.jpg);
	background-position: center center;
}

#second-hero.rubberprocessing {
	background-image: url(../assets/img/second-hero-rubberprocessing.jpg);
	background-position: center center;
}

#second-hero.resinprocessing {
	background-image: url(../assets/img/second-hero-resinprocessing.jpg);
	background-position: center center;
}

#second-hero.equipment {
	background-image: url(../assets/img/second-hero-equipment.jpg);
	background-position: center center;
}
#second-hero.material {
	background-image: url(../assets/img/second-hero-material.jpg);
	background-position: center center;
}
#second-hero.company {
	background-image: url(../assets/img/second-hero-company.jpg);
	background-position: center center;
}
#second-hero.faq {
	background-image: url(../assets/img/second-hero-faq.png);
	background-position: center center;
}

#second-hero.recruit {
	background-image: url(../assets/img/second-hero-recruit.jpg);
	background-position: center center;
}

.second-copy-section {
	position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
	width: 100%;
	height: 70vh;
	padding: 0;
}

.second-diagonal-content {
	position: absolute;
	top: 0;
	left: -10%;
    display: block;
    width: 35%;
    height: 100%;
	background: linear-gradient(90deg, rgba(0, 110, 137, 0.9), rgba(103, 187, 223, 0.9));
    -webkit-transform: skew(17deg);
    transform: skew(17deg);
	padding: 0;
}

.second-copy-wrap {
	position: absolute;
	top: 0;
	left: 5%;
	display: flex;
	flex-direction: column;
	justify-content: center;
    height: 100%;
    margin: 0;
	padding: 0;
}
.second-copy-title {
	display: block;
    font-size: 3.6vw;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 0;
	line-height: 1.0;
    color: #F5F5F5;
    text-shadow: 3px 3px 5px #000000;
    margin: 0;
	padding: 0 0 8%;
}
.second-copy-title span {
	display: block;
    font-size: 1.2vw;
    font-weight: 500;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 2px;
    margin: 0;
	padding: 1.5% 0 0;
}
.second-copy-title span.subtitle {
	display: block;
    font-size: 1.2vw;
    font-weight: 500;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 2px;
    margin: 0;
	padding: 20px 0 0;
}
.second-copy-lead {
	display: block;
    font-size: 1.0vw;
    font-weight: 500;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 1px;
	line-height: 1.8;
    color: #F5F5F5;
    text-shadow: 2px 2px 3px #000000;
    margin: 0;
	padding: 0;
}


.second-copy-section-s {
	position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
	width: 100%;
	height: 35vh;
	padding: 0;
	background-color: #006E89;
}
.second-copy-wrap-s {
	position: absolute;
	top: 0;
	left: 5%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 90%;
    height: 100%;
	text-align: center;
    margin: 0;
	padding: 2% 0 0;
}
.second-copy-title-s {
	display: block;
    font-size: 3.0vw;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 0;
	line-height: 1.0;
    color: #F5F5F5;
    text-shadow: 3px 3px 5px #000000;
    margin: 0;
	padding: 0;
}
.second-copy-title-s span.subtitle-s {
    display: block;
    font-size: 1.0vw;
    font-weight: 500;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 1px;
    margin: 0;
    padding: 20px 0 0;
}

.ip-main-inner {
    background-color: #FFF;
}

@media (max-width: 1480px){
	.second-copy-lead {
		font-size: 1.2vw;
		letter-spacing: 1px;
	}
}
@media (max-width: 1200px){
	#second-hero {
		height: 100vh;
	}
	.second-copy-section {
		height: 100vh;
	}
	.second-diagonal-content {
		left: -20%;
		width: 45%;
	}
	.second-copy-title {
		font-size: 6.0vw;
		padding: 0 0 8%;
	}
	.second-copy-title span {
		font-size: 2.4vw;
		letter-spacing: 2px;
		padding: 3% 0 0;
	}
	.second-copy-lead {
		font-size: 1.8vw;
		letter-spacing: 1px;
	}
	.second-copy-title span.subtitle {
		font-size: 2.4vw;
	}
	.second-copy-title-s {
		font-size: 3.0rem;
	}
	.second-copy-title-s span.subtitle-s {
		font-size: 1.8rem;
		letter-spacing: 0;
		padding: 10px 0 0;
	}
}
@media (max-width: 990px){
	.second-diagonal-content {
		left: -20%;
		width: 60%;
	}
	.second-copy-section-s {
		height: 30vh;
	}
}
@media (max-width: 749px){
	.second-copy-section-s {
		height: 100vh;
	}
}
@media (max-width: 499px){
	.second-diagonal-content {
		left: -27.5%;
		width: 70%;
	}
	.second-copy-wrap {
		left: 10%;
	}
	.second-copy-title {
		font-size: 4.8rem;
		padding: 0 0 10%;
	}
	.second-copy-title span {
		font-size: 2.0rem;
		letter-spacing: 2px;
		padding: 3% 0 0;
	}
	.second-copy-title span.subtitle {
		font-size: 2.0rem;
	}
	.second-copy-lead {
		width: 94%;
		font-size: 1.8rem;
	}
	.second-copy-lead br {
		display: none;
	}
	.second-copy-section-s {
		height: 50vh;
	}
}


/*------------------------------------------------------------------
[Second About]
*/
.second-about-00area-right {
    position: relative;
    display: flex;
    background-color: #FFF;
    overflow: hidden;
    padding: 25px 0;
}
.second-about-00area-wrapper-right {
    display: flex;
    flex-direction: row-reverse;
    align-items: stretch;
    height: 100%;
}
.second-about-00area-wrap-right {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: calc(100% - 50px);
    margin: 25px 0;
    padding: 0 6% 0 0;
    background-color: rgba(0, 110, 137, 1.0);
    z-index: 2;
}
.second-about-00area-wrap-right::before {
    content: "";
    position: absolute;
    top: 0;
    left: -22%;
    display: block;
    background: linear-gradient(90deg, rgba(103, 187, 223, 1.0), rgba(0, 110, 137, 1.0));
    width: 100%;
    height: 100%;
    -webkit-transform: skew(17deg);
    transform: skew(17deg);
    z-index: -1;
    pointer-events: none;
}
.second-about-00area-right .title-wrap > h3.second-toptitle {
    display: block;
    font-size: 2.4vw;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 5px;
    line-height: 1.0;
    color: #FFF;
    text-align: right;
    text-shadow: 3px 3px 5px #000000;
    margin: 0 0 5%;
    padding: 0;
}
.second-about-00area-right .title-wrap > h3.second-toptitle span {
    font-size: 4.8vw;
}
.second-about-00area-right .title-wrap > h3.second-toptitle br {
    display: none;
}
.second-about-00area-right .text-wrap-inner > h5.second-toplead {
    width: 100%;
    font-size: 1.1vw;
    font-weight: 400;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 1px;
    line-height: 1.8;
    color: #FFF;
    text-align: right;
    margin: 0 0 10px;
}

.new-second-toplead {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	font-weight: 400;
	color: #fff;
	line-height: 1.7;
	text-align: right;
	margin: 0 0 10px;
}

@media (max-width: 1480px){
	.second-about-00area-right .text-wrap-inner > h5.second-toplead {
		font-size: 1.2vw;
	}
}
@media (max-width: 1200px){
	.second-about-00area-right {
		padding: 15px 0;
	}
	.second-about-00area-wrap-right {
		height: auto;
		margin: 0 0 15px;
		padding: 4% 8% 4% 0;
	}
	.second-about-00area-right .text-wrap-inner > h5.second-toplead {
		font-size: 1.4vw;
	}
}
@media (max-width: 990px){
	.second-about-00area-right {
		padding: 15px 0 0;
	}
	.second-about-00area-wrap-right {
		height: auto;
		margin: 0 0 15px;
		padding: 4% 0;
	}
	.second-about-00area-right .title-wrap > h3.second-toptitle {
		font-size: 4.8vw;
		letter-spacing: 5px;
		text-align: center;
		margin: 0 0 5%;
	}
	.second-about-00area-right .title-wrap > h3.second-toptitle span {
		font-size: 7.2vw;
	}
	.second-about-00area-right .text-wrap-inner > h5.second-toplead {
		font-size: 2.0vw;
		letter-spacing: 1px;
		line-height: 1.6;
		text-align: left;
		margin: 0;
	}

	.new-second-toplead {
		padding: 0 8%;
		text-align: left !important;
	}
}
@media (max-width: 499px){
	.second-about-00area-right {
		padding: 10px 0 0;
	}
	.second-about-00area-wrap-right {
		margin: 0 0 10px;
		padding: 8% 0;
	}
	.second-about-00area-right .title-wrap > h3.second-toptitle {
		font-size: 3.0rem;
		letter-spacing: 4px;
		line-height: 1.1;
		margin: 0 0 5%;
	}
	.second-about-00area-right .title-wrap > h3.second-toptitle span {
		font-size: 4.8rem;
	}
	.second-about-00area-right .title-wrap > h3.second-toptitle br {
		display: block;
	}
	.second-about-00area-right .text-wrap-inner > h5.second-toplead {
		font-size: 1.8rem;
		letter-spacing: 0;
		line-height: 1.5;
		padding: 0 10%;
	}

	.new-second-toplead {
		padding: 0 8%;
		text-align: left !important;
	}
}


/*------------------------------------
[Second About Contents 01]
*/
.second-about-area-left {
    position: relative;
    display: flex;
	margin: 0 0 25px;
    padding: 0;
    background-color: #FFF;
    overflow: hidden;
}
.second-about-01area-wrap {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: auto;
    margin: 0;
    padding: 5% 6%;
    z-index: 2;
}
.second-about-01area-wrap .title-wrap {
    position: relative;
    text-align: left;
    margin-bottom: 10%;
    z-index: 1;
}
.second-about-01area-wrap .title-wrap > h2 {
	display: block;
	font-size: 2.4vw;
    font-weight: 400;
	font-family: 'Oswald', sans-serif;
    color: #43A4C7;
    margin-bottom: 6%;
}
.second-about-01area-wrap .title-wrap > h2 span {
	display: inline-block;
	font-size: 7.2vw;
	font-family: 'Oswald', sans-serif;
	padding: 0 0 0 10px;
}
.second-about-01area-wrap .title-wrap > h3 {
	display: inline-block;
    font-size: 2.4vw;
    font-weight: 600;
	font-family: 'Noto Serif JP', serif;
    letter-spacing: 5px;
	line-height: 1.4;
    color: #121212;
    margin: 0;
	padding: 8px 0 0;
}
.second-about-01area-wrap .text-wrap {
    position: relative;
    z-index: 1;
}
.second-about-01area-wrap .text-wrap-inner {
    margin-left: 0;
}
.second-about-01area-wrap .text-wrap-inner > h5 {
	width: 100%;
    font-size: 0.9vw;
    font-weight: 400;
	font-family: 'Noto Serif JP', serif;
    letter-spacing: 0;
	line-height: 1.8;
    color: #121212;
	text-align: left;
	margin: 0;
	padding: 20px 5px 0;
	border-top: solid 1px #121212;
}

@media (max-width: 1480px){
	.second-about-01area-wrap .title-wrap > h3 {
		font-size: 3.0vw;
		letter-spacing: 5px;
	}
	.second-about-01area-wrap .text-wrap-inner > h5 {
		font-size: 1.1vw;
	}
}
@media (max-width: 990px){
	.second-about-area-left {
		margin: 0;
	}
	.second-about-01area-wrap {
		padding: 6% 6%;
	}
	.second-about-01area-wrap .title-wrap > h2 {
		font-size: 3.6vw;
		margin-bottom: 5%;
	}
	.second-about-01area-wrap .title-wrap > h2 span {
		font-size: 9.6vw;
	}
	.second-about-01area-wrap .title-wrap > h3 {
		font-size: 4.8vw;
		letter-spacing: 5px;
		padding: 0;
	}
	.second-about-01area-wrap .title-wrap > h3 br {
		display: none;
	}
	.second-about-01area-wrap .title-wrap {
		margin-bottom: 5%;
	}
	.second-about-01area-wrap .text-wrap-inner > h5 {
		font-size: 1.6rem;
		line-height: 1.6;
		padding: 15px 5px 0;
	}
}
@media (max-width: 499px){
	.second-about-01area-wrap {
		padding: 10% 8%;
	}
	.second-about-01area-wrap .title-wrap > h2 {
		font-size: 2.4rem;
		margin-bottom: 8%;
	}
	.second-about-01area-wrap .title-wrap > h2 span {
		font-size: 4.8rem;
	}
	.second-about-01area-wrap .title-wrap {
		margin-bottom: 8%;
	}
	.second-about-01area-wrap .title-wrap > h3 {
		font-size: 3.0rem;
		letter-spacing: 0px;
		padding: 0;
	}
	.second-about-01area-wrap .title-wrap > h3 br {
		display: block;
	}
}

/*------------------------------------
[Second About Photo Gallery 01]
*/
.lightgallery-wrapper-about {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 2px;
    background-color: #FFF;
}
.lightgallery-wrapper-about a.gallery {
	position: relative;
	display: block;
	width: 25%;
	margin: 0;
	padding: 0;
    background-color: #FFF;
	border: solid 2px #FFF;
    overflow: hidden;
}
.lightgallery-wrapper-about a.gallery .gallery-zoom {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    background-color: rgba(0, 0, 0, 0.1);
    transition: background-color 0.5s ease 0s;
}
.lightgallery-wrapper-about a.gallery .gallery-zoom img {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -10px;
    margin-top: -10px;
    opacity: 0;
    transition: opacity 0.5s ease 0s;
}
.lightgallery-wrapper-about a.gallery:hover .gallery-zoom {
    background-color: rgba(0, 0, 0, 0.5);
}
.lightgallery-wrapper-about a.gallery:hover .gallery-zoom img {
    opacity: 1;
}

.about-photo-wrapper {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
    background-color: #FFF;
}

@media (max-width: 499px){
	.lightgallery-wrapper-about a.gallery {
		width: 33.333%;
	}
}

/*------------------------------------
[Second About Contents 02]
*/
.second-about-area-right {
    position: relative;
    display: flex;
	margin: 0 0 25px;
    padding: 0;
    background-color: #FFF;
    overflow: hidden;
}

.second-about-area-wrapper-right {
    display: flex;
	flex-direction: row-reverse;
	align-items: stretch;
    height: 100%;
}
.second-about-02area-wrap {
	position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: auto;
    margin: 0;
    padding: 5% 6%;
    z-index: 2;
}
.second-about-02area-wrap .title-wrap {
    position: relative;
	text-align: left;
    margin-bottom: 10%;
    z-index: 1;
}
.second-about-02area-wrap .title-wrap > h2 {
    display: block;
    font-size: 2.4vw;
    font-weight: 400;
	font-family: 'Oswald', sans-serif;
    color: #43A4C7;
    margin-bottom: 6%;
}
.second-about-02area-wrap .title-wrap > h2 span {
	display: inline-block;
    font-size: 7.2vw;
	font-family: 'Oswald', sans-serif;
	padding: 0 0 0 10px;
}
.second-about-02area-wrap .title-wrap > h3 {
	display: inline-block;
    font-size: 2.4vw;
    font-weight: 600;
	font-family: 'Noto Serif JP', serif;
    letter-spacing: 5px;
	line-height: 1.4;
    color: #121212;
    margin: 0;
	padding: 8px 0 0;
}
.second-about-02area-wrap .text-wrap {
    position: relative;
    z-index: 1;
}
.second-about-02area-wrap .text-wrap-inner {
    margin-left: 0;
}
.second-about-02area-wrap .text-wrap-inner > h5 {
	width: 100%;
    font-size: 0.9vw;
    font-weight: 400;
	font-family: 'Noto Serif JP', serif;
    letter-spacing: 0;
	line-height: 1.8;
    color: #121212;
	text-align: left;
	margin: 0;
	padding: 20px 5px 0;
	border-top: solid 1px #121212;
}

@media (max-width: 1480px){
	.second-about-02area-wrap .title-wrap > h3 {
		font-size: 3.0vw;
		letter-spacing: 5px;
	}
	.second-about-02area-wrap .text-wrap-inner > h5 {
		font-size: 1.1vw;
	}
}
@media (max-width: 990px){
	.second-about-area-right {
		margin: 0;
	}
	.second-about-02area-wrap {
		padding: 6% 6%;
	}
	.second-about-02area-wrap .title-wrap > h2 {
		font-size: 3.6vw;
		margin-bottom: 5%;
	}
	.second-about-02area-wrap .title-wrap > h2 span {
		font-size: 9.6vw;
	}
	.second-about-02area-wrap .title-wrap > h3 {
		font-size: 4.8vw;
		letter-spacing: 5px;
		padding: 0;
	}
	.second-about-02area-wrap .title-wrap > h3 br {
		display: none;
	}
	.second-about-02area-wrap .title-wrap {
		margin-bottom: 5%;
	}
	.second-about-02area-wrap .text-wrap-inner > h5 {
		font-size: 1.6rem;
		line-height: 1.6;
		padding: 15px 5px 0;
	}
}
@media (max-width: 499px){
	.second-about-02area-wrap {
		padding: 10% 8%;
	}
	.second-about-02area-wrap .title-wrap > h2 {
		font-size: 2.4rem;
		margin-bottom: 8%;
	}
	.second-about-02area-wrap .title-wrap > h2 span {
		font-size: 4.8rem;
	}
	.second-about-02area-wrap .title-wrap {
		margin-bottom: 8%;
	}
	.second-about-02area-wrap .title-wrap > h3 {
		font-size: 3.0rem;
		letter-spacing: 0px;
		padding: 0;
	}
	.second-about-02area-wrap .title-wrap > h3 br {
		display: block;
	}
}

/*------------------------------------------------------------------
[Second rubber processing]
------------------------------------------------------------------*/

.sec-service-details {
    padding: 40px 0;
}

/* sec-service-details-wappaerのスタイル */
.sec-service-details-wappaer {
    max-width: 1230px;
    margin: 0 auto;
    padding: 40px;
    background-color: #eef7f8;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-radius: 8px;
}

/* sec-service-details-textareaのスタイル */
.sec-service-details-textarea {
    width: 60%;
}

.sec-service-details-textarea h2 {
    font-size: 3rem;
    color: #005b72;
    margin-bottom: 20px;
	font-family: 'Noto Serif JP', serif;
}

.sec-service-details-textarea p {
    color: #333;
    line-height: 1.8;
    margin-bottom: 20px;
	font-family: 'Noto Serif JP', serif;
}

.service-details-btn {
    display: inline-block;
    padding: 10px 20px;
    background-color: transparent;
    color: #1C799A;
    text-decoration: none;
    border: 1px solid #1C799A;
    font-weight: bold;
    transition: all 0.3s ease;
    position: relative; /* 擬似要素を使用するためにpositionをrelativeに */
    padding-right: 80px; /* 擬似要素のために右に余白を追加 */

}

/* ボタンの右に三角のアイコンを表示 */
.service-details-btn::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    width: 0;
    height: 0;
    border-left: 10px solid #1C799A; /* 三角形のアイコン */
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    transform: translateY(-50%);
}

.service-details-btn:hover {
    background-color: #1C799A;
    color: #fff;
}

.service-details-btn:hover::after {
    border-left-color: #fff; /* ホバー時にアイコンの色も変更 */
}


/* sec-service-details-imageareaのスタイル */
.sec-service-details-imagearea {
    width: 35%;
}

.sec-service-details-imagearea img {
    width: 100%;
    height: auto;
}

/* rb-arrowのスタイル（追加） */
.rb-arrow {
    display: inline-block;
    margin-left: 8px; /* ボタンとアイコンの間に余白を追加 */
}

/* メディアクエリ - 画面幅が768px以下の場合のスタイル */
@media (max-width: 768px) {
    .sec-service-details-wappaer {
        flex-direction: column;
        padding: 20px;
    }

    .sec-service-details-textarea,
    .sec-service-details-imagearea {
        width: 100%;
    }

    .sec-service-details-textarea {
        margin-bottom: 20px;
    }

	.sec-service-details-textarea h2 {
		font-size: 2rem;
	}

	.sec-service-details-textarea p {
		font-size: 1.4rem;
	}
}


/* 基本レイアウト */
.processing-container {
    max-width: 100%; /* 横幅を全体に広げる */
    margin-top: 40px; /* 上下の余白を設定 */
}

/* 各加工方法の要素 */
.processing-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: linear-gradient(90deg, rgba(103, 187, 223, 1.0), rgba(0, 110, 137, 1.0));
    margin-bottom: 20px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	height: 260px;
}

/* 画像部分のスタイル */
.processing-item .image {
    width: 50%; /* 横幅を50%に設定 */
	height: 260px;
    margin: 0; /* 上下左右の余白を完全になくす */
}

.processing-item .image img {
    width: 100%;
    height: 100%; /* 親要素に合わせて高さも設定 */
    object-fit: cover; /* 画像が親要素にフィットするように調整 */
    border-radius: 0; /* 画像に角丸をつけない */
}

/* テキスト部分のスタイル */
.processing-item .text {
    width: 50%; /* 横幅を50%に設定 */
    padding: 0 64px; /* テキストエリアの左右に余白を追加 */
    color: #fff;
}

.processing-item .text h2 {
    font-size: 2.2rem;
    margin-bottom: 10px;
    text-shadow: 2px 2px 3px #000000;
	color: #fff;
	text-align: left;
}

.processing-item .text p {
    line-height: 1.6;
    margin-bottom: 10px;
	color: #fff;
	text-align: left;
}

.processing-item .text hr {
    border: 0.5px solid #fff;
    margin: 24px 0 16px 0;
}

/* スマホ表示用のスライダーを非表示にする */
.sp-only-slider-container {
    display: none;
}

.rp-sec-text {
	max-width: 1230px;
	margin: 0 auto;
	margin-bottom: 26px;
	text-align: center;
	padding: 0 4%;
}

/* メディアクエリ */
@media (max-width: 768px) {
    /* PC表示用のコンテナを非表示にする */
    .processing-container {
        display: none;
    }

    /* スマホ表示用のスライダーを表示する */
    .sp-only-slider-container {
        display: block;
        position: relative;
        overflow: hidden;
        width: 100%;
        margin-top: 40px; /* 上下の余白を設定 */
    }

    .sp-only-slider-wrapper {
        display: flex;
        transition: transform 0.5s ease;
        will-change: transform;
        flex-wrap: nowrap;
		align-items: stretch;
    }

    .sp-only-slider-slide {
        flex: 0 0 70%;
        margin: 0 8px;
        transition: transform 0.5s ease, opacity 0.5s ease;
        transform-origin: center;
        text-align: center;
        opacity: 0.7;
		display: flex;
        flex-direction: column;
    }

    .sp-only-slider-slide.active {
        opacity: 1;
    }

	/* スライド内のコンテンツを高さ100%にする */
	.sp-only-slider-slide .processing-item {
		display: flex;
		flex-direction: column;
		height: 100%;
	}

	.sp-only-slider-slide .processing-item .image,
    .sp-only-slider-slide .processing-item .text {
        /* それぞれの高さを自動調整 */
        flex: 1;
		width: 100%;
    }

	.sp-only-slider-slide .processing-item .image {
		flex: none;
	}

    .sp-only-slider-slide .processing-item .text {
        flex: 1;
        display: flex;
        flex-direction: column;
    }

	/* テキスト内のコンテンツを縦方向に配置 */
    .sp-only-slider-slide .processing-item .text h2,
    .sp-only-slider-slide .processing-item .text p {
        flex: none;
    }

    .sp-only-slider-slide .processing-item .text hr {
        flex: none;
    }

    /* テキスト部分の余白を調整 */
    .sp-only-slider-slide .processing-item .text {
        padding: 10%;
    }

    /* ナビゲーションのスタイル */
    .sp-only-slider-navigation {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: 20px;
        gap: 10px;
    }

    .sp-only-slider-prev,
    .sp-only-slider-next {
        width: 30px;
        height: 30px;
        background-color: #EDF6F8;
        border: none;
        border-radius: 50%; /* ボタンを正円に */
        cursor: pointer;
        position: relative;
        transition: background-color 0.3s ease;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .sp-only-slider-prev::before,
    .sp-only-slider-next::before {
        content: '';
        display: block;
        width: 0;
        height: 0;
        border-style: solid;
    }

    .sp-only-slider-prev::before {
        border-width: 5px 7px 5px 0;
        border-color: transparent #43A4C7 transparent transparent;
    }

    .sp-only-slider-next::before {
        border-width: 5px 0 5px 7px;
        border-color: transparent transparent transparent #43A4C7;
    }

    .sp-only-slider-prev:hover,
    .sp-only-slider-next:hover {
        background-color: #D6EBF0;
    }

    /* ページネーションのスタイル */
    .sp-only-slider-pagination {
        display: flex;
        justify-content: center;
        gap: 12px;
    }

    .sp-only-slider-pagination > span {
        width: 10px;
        height: 10px;
        background-color: #ccc;
        border-radius: 50%;
        cursor: pointer;
        transition: background-color 0.3s ease;
    }

    .sp-only-slider-pagination > span.active {
        background-color: #43A4C7;
    }

    .sp-only-slider-pagination > span:hover {
        background-color: #1C799A;
    }

    /* その他のスタイル */

    .works-maker-title .rb {
        margin: 0 0 1%;
    }
}

/* さらに小さい画面用のスタイル（必要に応じて） */
@media (max-width: 480px) {
    .sp-only-slider-prev,
    .sp-only-slider-next {
        width: 25px;
        height: 25px;
    }

    .sp-only-slider-prev::before {
        border-width: 4px 6px 4px 0;
        border-color: transparent #43A4C7 transparent transparent;
    }

    .sp-only-slider-next::before {
        border-width: 4px 0 4px 6px;
        border-color: transparent transparent transparent #43A4C7;
    }

    .sp-only-slider-pagination > span {
        width: 8px;
        height: 8px;
    }

    /* テキストの余白を調整 */
    .sp-only-slider-slide .processing-item .text {
        padding: 30px 20px;

    }
}






/*------------------------------------------------------------------
[New Second Works]
*/
.rb-sec {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 50px auto;
}

.rp-content-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: space-between;
    width: 100%;
	padding: 4%;
}

.rp-content-box {
    background-color: #fff;
    text-align: center;
    flex: 1 1 calc(25% - 20px); /* PCでは4つ並べる（25%幅） */
    box-sizing: border-box;
    margin-bottom: 20px; /* ボックス間の余白 */
}

.rp-content-box img {
    width: 100%; /* 画像サイズを適宜調整 */
    height: auto;
    margin-bottom: 10px;
}

.rp-content-box h3 {
	margin-bottom: 10px;
}

.rp-content-box p {
    font-size: 14px;
    color: #333;
	text-align: left;
}

/* スマホ表示用のスタイル */
@media (max-width: 600px) {
    .rp-content-box {
        flex: 1 1 calc(50% - 10px); /* スマホでは2つ並べる（50%幅） */
    }

	/* ボックスの幅を調整 */
    .rp-content-box {
        width: 48%; /* 2列レイアウト */
		margin-bottom: 0;
    }

    /* h3内のspanをスタイル */
    .rp-content-box h3 span {
        display: block;
        font-size: 1.2rem; /* フォントサイズを少し小さく */
        margin-top: 5px; /* 上に余白を追加 */
    }

    /* h3のフォントサイズを調整 */
    .rp-content-box h3 {
        font-size: 1.6rem;
    }

    /* 高さを揃えるためにFlexboxを使用 */
    .rp-content-box {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
    }

    /* タイトルとテキストの高さを揃える */
    .rp-content-box h3,
    .rp-content-box p {
        min-height: 40px; /* 適切な高さを設定 */
		display: grid;
		place-content: center;
    }

}

/* about sec */
.rb-about-btn {
	width: 80%;
	background: linear-gradient(0deg, rgba(103, 187, 223, 1.0), rgba(0, 110, 137, 1.0));
	color: #fff;
	padding: 16px 20px;
	margin-top: 30px;
	position: relative;
	padding-right: 80px;
}

.rb-about-btn::after {
	content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    width: 0;
    height: 0;
    border-left: 10px solid #fff; /* 三角形のアイコン */
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    transform: translateY(-50%);
}

.rb-about-btn:hover {
    background-color: #1C799A;
    color: #fff;
}

.rb-about-btn:hover::after {
    border-left-color: #fff; /* ホバー時にアイコンの色も変更 */
}

@media (max-width: 768px) {
	.rb-about-btn {
		width: 100%;
	}
}





/*------------------------------------------------------------------
[Second Works]
*/

.second-works-01area-right {
    position: relative;
    display: flex;
    padding: 25px 2px 0;
    background-color: #FFF;
    overflow: hidden;
}
.second-works-01area-wrapper-right {
    display: flex;
    flex-direction: row-reverse;
    align-items: stretch;
    height: 100%;
}
.second-works-01area-wrap-right {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: calc(100% - 50px);
    margin: 25px 0;
    padding: 0 6% 0 0;
    background-color: rgba(0, 110, 137, 1.0);
    z-index: 2;
}
.second-works-01area-wrap-right::before {
    content: "";
    position: absolute;
    top: 0;
    left: -22%;
    display: block;
    background: linear-gradient(90deg, rgba(103, 187, 223, 1.0), rgba(0, 110, 137, 1.0));
    width: 150%;
    height: 100%;
    -webkit-transform: skew(17deg);
    transform: skew(17deg);
    z-index: -1;
    pointer-events: none;
}
.second-works-01area-right .title-wrap > h2.second-workstitle {
    display: block;
    font-size: 2.0vw;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    color: #FFF;
    text-align: right;
    text-shadow: 3px 3px 5px #000000;
    margin-bottom: 5%;
}
.second-works-01area-right .title-wrap > h2.second-workstitle span {
    display: inline-block;
    font-size: 6.0vw;
    font-family: 'Oswald', sans-serif;
    padding: 0 0 0 10px;
}
.second-works-01area-right .title-wrap > h2.second-toptitle {
    display: block;
    font-size: 2.4vw;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 5px;
    line-height: 1.0;
    color: #FFF;
    text-align: right;
    text-shadow: 3px 3px 5px #000000;
    margin: 0 0 6%;
    padding: 0;
}
.second-works-01area-right .text-wrap-inner > h3.second-toplead {
    width: 86%;
    font-size: 0.9vw;
    font-weight: 400;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 1px;
    line-height: 1.8;
    color: #FFF;
    text-align: right;
    text-shadow: 2px 2px 3px #000000;
    margin: 0 0 0 14%;
}

@media (max-width: 1680px){
	.second-works-01area-right .text-wrap-inner > h3.second-toplead {
		font-size: 1.0vw;
		letter-spacing: 0;
	}
}
@media (max-width: 1480px){
	.second-works-01area-right .text-wrap-inner > h3.second-toplead {
		font-size: 1.1vw;
	}
}
@media (max-width: 1200px){
	.second-works-01area-right {
		padding: 15px 0 0;
	}
	.second-works-01area-wrapper-right {
		height: auto;
	}
	.second-works-01area-wrap-right {
		height: auto;
		padding: 0 6% 0 0;
	}
	.second-works-01area-right .title-wrap > h2.second-toptitle {
		font-size: 3.0vw;
		letter-spacing: 5px;
		margin: 0 0 6%;
	}
	.second-works-01area-right .text-wrap-inner > h3.second-toplead {
		width: 100%;
		font-size: 1.2vw;
		line-height: 1.5;
		margin: 0;
	}
}
@media (max-width: 990px){
	.second-works-01area-wrap-right {
		margin: 0;
		padding: 8% 6%;
	}
	.second-works-01area-right .title-wrap > h2.second-workstitle {
		font-size: 3.6vw;
		margin-bottom: 5%;
	}
	.second-works-01area-right .title-wrap > h2.second-workstitle span {
		font-size: 9.6vw;
		padding: 0 0 0 10px;
	}
	.second-works-01area-right .title-wrap > h2.second-toptitle {
		font-size: 4.8vw;
		letter-spacing: 4px;
		margin: 0 0 6%;
	}
	.second-works-01area-right .text-wrap-inner > h3.second-toplead {
		font-size: 1.6rem;
	}
}
@media (max-width: 499px){
	.second-works-01area-right {
		padding: 10px 0 0;
	}
	.second-works-01area-wrap-right {
		height: auto;
		margin: 0;
		padding: 10% 10% 12%;
	}
	.second-works-01area-right .title-wrap > h2.second-workstitle {
		font-size: 2.4rem;
		text-align: left;
		margin-bottom: 8%;
	}
	.second-works-01area-right .title-wrap > h2.second-workstitle span {
		font-size: 4.8rem;
		padding: 0 0 0 10px;
	}
	.second-works-01area-right .title-wrap > h2.second-toptitle {
		font-size: 3.0rem;
		letter-spacing: 4px;
		text-align: left;
		margin: 0 0 8%;
	}
	.second-works-01area-right .text-wrap-inner > h3.second-toplead {
		font-size: 1.6rem;
		font-family: 'Noto Sans JP', sans-serif;
		text-align: left;
		text-shadow: 2px 2px 3px #000000;
	}
}

.second-works-02area-left {
    position: relative;
    display: flex;
    padding: 25px 2px 0;
    background-color: #FFF;
    overflow: hidden;
}
.second-works-02area-wrapper {
    display: flex;
    height: 100%;
}
.second-works-02area-wrap {
	position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: calc(100% - 50px);
	margin: 25px 0;
	padding: 0 0 0 6%;
    background-color: rgba(0, 110, 137, 1.0);
    z-index: 2;
}
.second-works-02area-wrap::before {
    content: "";
    position: absolute;
    top: 0;
    right: -22%;
    display: block;
	background: linear-gradient(90deg, rgba(0, 110, 137, 1.0), rgba(103, 187, 223, 1.0));
    width: 150%;
    height: 100%;
    -webkit-transform: skew(17deg);
	transform: skew(17deg);
    z-index: -1;
    pointer-events: none;
}
.second-works-02area-left .title-wrap > h2.second-workstitle {
    display: block;
    font-size: 2.0vw;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    color: #FFF;
    text-shadow: 3px 3px 5px #000000;
    margin-bottom: 5%;
}
.second-works-02area-left .title-wrap > h2.second-workstitle span {
    display: inline-block;
    font-size: 6.0vw;
    font-family: 'Oswald', sans-serif;
    padding: 0 0 0 10px;
}
.second-works-02area-left .title-wrap > h2.second-toptitle {
    display: block;
    font-size: 2.4vw;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 5px;
    line-height: 1.0;
    color: #FFF;
    text-align: left;
    text-shadow: 3px 3px 5px #000000;
    margin: 0 0 6%;
    padding: 0;
}
.second-works-02area-left .text-wrap-inner > h3.second-toplead {
    width: 90%;
    font-size: 0.9vw;
    font-weight: 400;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 1px;
    line-height: 1.8;
    color: #FFF;
    text-align: left;
    text-shadow: 2px 2px 3px #000000;
    margin: 0;
}

@media (max-width: 1680px){
	.second-works-02area-left .text-wrap-inner > h3.second-toplead {
		font-size: 1.0vw;
		letter-spacing: 0;
	}
}
@media (max-width: 1480px){
	.second-works-02area-left .text-wrap-inner > h3.second-toplead {
		font-size: 1.1vw;
	}
}
@media (max-width: 1200px){
	.second-works-02area-left .title-wrap > h2.second-toptitle {
		font-size: 3.0vw;
		letter-spacing: 5px;
		margin: 0 0 6%;
	}
	.second-works-02area-left .text-wrap-inner > h3.second-toplead {
		width: 100%;
		font-size: 1.2vw;
		line-height: 1.5;
	}
}
@media (max-width: 990px){
	.second-works-02area-left {
		padding: 15px 0 0;
	}
	.second-works-02area-wrapper {
		height: auto;
	}
	.second-works-02area-wrap {
		height: auto;
		margin: 0;
		padding: 8% 6%;
	}
	.second-works-02area-left .title-wrap > h2.second-workstitle {
		font-size: 3.6vw;
		margin-bottom: 5%;
	}
	.second-works-02area-left .title-wrap > h2.second-workstitle span {
		font-size: 9.6vw;
		padding: 0 0 0 10px;
	}
	.second-works-02area-left .title-wrap > h2.second-toptitle {
		font-size: 4.8vw;
		letter-spacing: 4px;
		margin: 0 0 6%;
	}
	.second-works-02area-left .text-wrap-inner > h3.second-toplead {
		font-size: 1.6rem;
		font-family: 'Noto Sans JP', sans-serif;
		line-height: 1.5;
	}
}
@media (max-width: 499px){
	.second-works-02area-left {
		padding: 10px 0 0;
	}
	.second-works-02area-wrap {
		padding: 10% 10% 12%;
	}
	.second-works-02area-left .title-wrap > h2.second-workstitle {
		font-size: 2.4rem;
		margin-bottom: 8%;
	}
	.second-works-02area-left .title-wrap > h2.second-workstitle span {
		font-size: 4.8rem;
		padding: 0 0 0 10px;
	}
	.second-works-02area-left .title-wrap > h2.second-toptitle {
		font-size: 3.0rem;
		letter-spacing: 4px;
		margin: 0 0 8%;
	}
}

/*------------------------------------
[Second About Photo Gallery 01]
*/

.works-img-wrap {
    position: relative;
    text-align: center;
    margin: 0;
    padding: 0;
	border: solid 2px #FFF;
    overflow: hidden;
}

.works-photo-section {
    position: relative;
    margin: 0;
    padding: 0;
}

.lightgallery-wrapper {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0 2px;
    background-color: #FFF;
}
.lightgallery-wrapper a.gallery {
	position: relative;
	display: block;
	width: 16.666%;
	margin: 0;
	padding: 0;
    background-color: #FFF;
	border: solid 2px #FFF;
    overflow: hidden;
}
.lightgallery-wrapper a.gallery .gallery-zoom {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    background-color: rgba(0, 0, 0, 0.1);
    transition: background-color 0.5s ease 0s;
}
.lightgallery-wrapper a.gallery .gallery-zoom img {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -10px;
    margin-top: -10px;
    opacity: 0;
    transition: opacity 0.5s ease 0s;
}
.lightgallery-wrapper a.gallery:hover .gallery-zoom {
    background-color: rgba(0, 0, 0, 0.5);
}
.lightgallery-wrapper a.gallery:hover .gallery-zoom img {
    opacity: 1;
}

@media (max-width: 1200px){
	.works-img-wrap {
		border: solid 0px #FFF;
	}
}
@media (max-width: 499px){
	.lightgallery-wrapper a.gallery {
		width: 33.333%;
	}
}


.second-works-maker-wrap {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: auto;
    margin: 0;
    padding: 5% 0 0;
}

.works-maker-wrapper {
    position: relative;
    -webkit-box-shadow: 0px 30px 30px -40px rgb(4 0 0 / 8%), 0px 30px 30px -40px rgb(4 0 0 / 8%);
    box-shadow: 0px 30px 30px -40px rgb(4 0 0 / 8%), 0px 30px 30px -40px rgb(4 0 0 / 8%);
    background: linear-gradient(-107deg, #FFFFFF 100px, transparent 100px), #43A4C7;
	padding: 10%;
}
.works-maker-photo-wrap {
	position: relative;
    display: block;
    margin: 0;
    padding: 0;
}
.works-maker-photo-up {
	position: absolute;
	top: 0;
	right: 0;
    display: block;
	width: 100px;
    margin: 0;
    padding: 0;
}
.works-maker-photo-down {
	position: absolute;
	bottom: 0;
	left: 0;
    display: block;
	width: 100px;
    margin: 0;
    padding: 0;
}
.works-maker-title {
	position: relative;
    display: block;
    font-size: 1.8vw;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 1px;
    line-height: 1.4;
    color: #121212;
	text-align: center;
    margin: 0 0 5%;
    padding: 0 0 3%;
}
.works-maker-title span {
    display: block;
    font-size: 1.2vw;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 0;
    padding: 0 0 10px;
}
.works-maker-title::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    display: block;
    width: 80px;
    height: 4px;
    background: -webkit-gradient(linear, left top, right top, color-stop(50%, #43A4C7), color-stop(50%, #aab6c1));
    background: linear-gradient(90deg, #43A4C7 50%, #aab6c1 50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.works-maker-text-wrap {
    display: block;
	width: 80%;
    margin: 0 auto;
    padding: 3% 0 8%;
	background-color: #FFF;
}
.works-maker-subtitle {
    display: block;
    font-size: 1.4vw;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 1px;
    line-height: 1.4;
    color: #121212;
	text-align: center;
    margin: 0;
    padding: 0 0 2%;
}
/* .works-maker-subtitle span {
} */
.works-maker-subtext {
    display: block;
    font-size: 0.8vw;
    font-weight: 400;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 1px;
    line-height: 1.6;
    color: #121212;
	text-align: left;
    margin: 0;
    padding: 0;
}

.rb-slider-btn {
	width: 300px;
	height: auto;
	padding: 16px 20px;
	background: linear-gradient(0deg, rgba(103, 187, 223, 1.0), rgba(0, 110, 137, 1.0));
	color: #fff;
	font-size: 1.8rem;
	display: inline-block;
	margin: 0 auto;
	margin-top: 18px;
	position: relative;
}

.rb-slider-btn::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	width: 0;
	height: 0;
	border-left: 8px solid #fff;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	transform: translateY(-50%);
}

.rb-sec-slider-area {
	margin-bottom: 80px;
}


.rb-sec-title-area {
	margin-bottom: 26px;
}

@media (max-width: 1480px){
	.works-maker-subtext {
		font-size: 1.0vw;
		letter-spacing: 0;
	}
}
@media (max-width: 1200px){
	.works-maker-text-wrap {
		width: 98%;
		padding: 3% 0 6%;
	}
	.works-maker-title {
		font-size: 2.4vw;
		letter-spacing: 0;
		margin: 0 0 5%;
	}
	.works-maker-title span {
		font-size: 1.8vw;
	}
	.works-maker-subtitle {
		font-size: 1.8vw;
		letter-spacing:0;
		padding: 0 0 2%;
	}
	.works-maker-subtitle span {
		font-size: 1.4vw;
	}
	.works-maker-subtext {
		font-size: 1.1vw;
		letter-spacing: 0;
		line-height: 1.5;
	}
}
@media (max-width: 990px){
	.works-maker-title {
		width: 90%;
		font-size: 3.6vw;
		margin: 0 auto 5%;
	}
	.works-maker-title span {
		font-size: 2.4vw;
	}
	.works-maker-subtitle {
		font-size: 3.0vw;
		letter-spacing:0;
		padding: 0 0 2%;
	}
	.works-maker-subtitle span {
		font-size: 2.4vw;
	}
	.works-maker-subtext {
		font-size: 1.6rem;
		line-height: 1.5;
		padding: 0 5%;
	}
}
@media (max-width: 499px){
	.second-works-maker-wrap {
		padding: 80px 0 0;
	}
	.works-maker-title {
		width: 86%;
		font-size: 2.4rem;
		margin: 0 auto 12%;
		padding: 0 0 10%;
	}
	.works-maker-title span {
		font-size: 1.8rem;
	}
	.works-maker-subtitle {
		width: 90%;
		font-size: 2.0rem;
		letter-spacing:0;
		margin: 0 auto;
		padding: 0 0 15px;
	}
	.works-maker-subtitle span {
		display: block;
		font-size: 2.0rem;
	}
	.works-maker-text-wrap {
		width: 90%;
		text-align: left;
		padding: 3% 0 6%;
	}
	.works-maker-subtext {
		font-size: 1.6rem;
		line-height: 1.5;
		text-align: left;
	}
	.works-maker-subtext br {
		display: none;
	}
}


/*---------------------------
[Works Flow]
*/

.second-works-flow-section {
    position: relative;
    display: block;
    width: 100%;
    padding: 6% 10% 6%;
	margin: 0;
    background-color: #F0F0F0;
}
.second-works-flow-section-topright {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 100px;
    margin: 0;
    padding: 0;
}

.f-right {
	flex-direction: row-reverse;
}

.features__item02 {
	text-align: left;
	background: linear-gradient(to right, #F5F5F5, #FFFFFF);
	padding: 0;
	border: solid 2px #43A4C7;
}

dl.item-flow02 {
    width: 100%;
	height: 100px;
    padding: 0;
    margin: 0;
}
dl.item-flow02 dt {
	display: flex;
	align-items: center;
    float: left;
    width: 100px;
	height: 100px;
    padding: 0;
    margin: 0;
}
dl.item-flow02 dd {
	display: flex;
	align-items: center;
    margin-left: 140px;
	height: 100px;
    padding: 0;
}

dl.item-flow02 dt .features__item__icon_step {
	display: block;
    width: 100px;
    height: 100px;
	font-size: 4.8rem;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	color: #FFF;
	line-height: 1.0;
	letter-spacing: 0;
	margin: 0 auto;
	background-color: #43A4C7;
	text-align: center;
	padding: 10px;
}
dl.item-flow02 dt .features__item__icon_step_text {
	display: block;
	font-size: 1.8rem;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	line-height: 1.0;
	letter-spacing: 0;
	color: #FFF;
	text-align: center;
	margin: 0 0 5px;
	padding: 0;
}
dl.item-flow02 dd .features__item__heading02 {
	display: block;
    font-size: 2.4rem;
    font-weight: 600;
    font-family: 'Noto Sans JP', sans-serif;
	color: #121212;
    letter-spacing: 1px;
	letter-spacing: 0;
	margin: 0;
	padding: 0;
}

.item-flow02-textwrap {
	display: flex;
	align-items: center;
	height: 100px;
	padding-left: 5%;
	padding-right: 5%;
}
.item-flow02-textwrap .features__item__body02l {
	width: 100%;
	font-size: 1.6rem;
    font-weight: 500;
    font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 0;
	line-height: 1.5;
	text-align: left;
	margin: 0;
	padding: 0;
}
.item-flow02-textwrap .features__item__body02r {
	width: 100%;
	font-size: 1.6rem;
    font-weight: 500;
    font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 0;
	line-height: 1.5;
	text-align: right;
	margin: 0;
	padding: 0;
}


.features__item__arrow01 {
	transform: rotate(0deg);
    font-size: 4.8rem;
	color: #121212;
	text-align: center;
	margin: 0 auto;
}

@media (max-width: 1480px){
	dl.item-flow02 {
		height: 80px;
	}
	dl.item-flow02 dt {
		width: 80px;
		height: 80px;
	}
	dl.item-flow02 dd {
		margin-left: 120px;
		height: 80px;
	}
	dl.item-flow02 dt .features__item__icon_step {
		width: 80px;
		height:80px;
		font-size: 4.0rem;
		padding: 10px;
	}
	dl.item-flow02 dt .features__item__icon_step_text {
		font-size: 1.6rem;
		margin: 0 0 5px;
	}
	.item-flow02-textwrap {
		height: 80px;
	}
	dl.item-flow02 dd .features__item__heading02 {
		font-size: 2.0rem;
	}
	.item-flow02-textwrap .features__item__body02l br {
		display: none;
	}
	.item-flow02-textwrap .features__item__body02r br {
		display: none;
	}
}
@media (max-width: 1200px){
	dl.item-flow02 dd {
		margin-left: 120px;
	}
	dl.item-flow02 dd .features__item__heading02 {
		font-size: 1.8rem;
	}
	.item-flow02-textwrap {
		padding-left: 2%;
		padding-right: 2%;
	}
	.features__item__arrow01 {
		margin: 20px auto;
	}
	.features__item__arrow02 {
		margin: 20px auto;
	}
}
@media (max-width: 990px){
	.second-works-flow-section-topright {
		display: none;
	}
	dl.item-flow02 dd .features__item__heading02 {
		font-size: 2.0rem;
	}
	.item-flow02-textwrap {
		height: auto;
		padding-top: 20px;
		padding-bottom: 0;
		padding-left: 5%;
		padding-right: 5%;
	}
	.item-flow02-textwrap .features__item__body02r {
		font-size: 1.6rem;
		text-align: left;
	}
	.features__item__arrow01 {
		margin: 10px auto;
	}
	.features__item__arrow02 {
		margin: 10px auto;
	}
}
@media (max-width: 499px){
	.second-works-flow-section {
		padding: 10% 8% 12%;
	}
	dl.item-flow02 {
		width: 100%;
		height: 80px;
	}
	dl.item-flow02 dt {
		width: 80px;
		height: 80px;
	}
	dl.item-flow02 dt .features__item__icon_step {
		width: 80px;
		height: 80px;
		font-size: 3.6rem;
		padding: 10px;
	}
	dl.item-flow02 dt .features__item__icon_step_text {
		font-size: 1.6rem;
		margin: 0 0 5px;
	}
	dl.item-flow02 dd {
		margin-left: 90px;
		height: 80px;
	}
	dl.item-flow02 dd .features__item__heading02 {
		font-size: 1.8rem;
		padding-right: 8px;
	}
	.item-flow02-textwrap {
		padding-top: 10px;
	}
	.features__item__arrow01 {
		font-size: 4.8rem;
		margin: 0 auto;
	}
	.features__item__arrow02 {
		font-size: 4.8rem;
		margin: 0 auto;
	}
}




/*------------------------------------------------------------------
[Second Equipment]
*/

.second-equipment-area {
    position: relative;
    display: flex;
    padding: 25px 0;
    background-color: #FFF;
    overflow: hidden;
}
.second-equipment-area-wrapper {
    display: flex;
    align-items: stretch;
    height: 100%;
}
.second-equipment-area-wrap {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0;
    padding: 0 6%;
	background: linear-gradient(90deg, rgba(103, 187, 223, 1.0), rgba(0, 110, 137, 1.0));
}
.second-equipment-area h2.equipment-list-title {
    display: block;
    font-size: 1.6vw;
    font-weight: 600;
    color: #FFF;
    text-shadow: 3px 3px 5px #000000;
    margin: 0 0 4%;
}

.second-equipment-area .table-equipment-list {
    width: 100%;
    margin: 0 auto;
}
.second-equipment-area .table-equipment-list th {
    width: 20%;
    font-size: 0.9vw;
    font-weight: 600;
    color: #FFF;
    letter-spacing: 1px;
    vertical-align: middle;
    text-align: left;
    padding: 1.0em 0.5em 1.0em 0;
}
.second-equipment-area .table-equipment-list td {
    width: 80%;
    text-align: left;
    vertical-align: middle;
    font-size: 0.9vw;
    font-weight: 400;
    color: #FFF;
    letter-spacing: 1px;
    line-height: 1.6;
    text-align: left;
    padding: 1.0em 0.5em 1.0em 0;
}
.second-equipment-area p.equipment-list-text {
    display: block;
    font-size: 0.8vw;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 1.8;
    color: #FFF;
    margin: 5% 0 0;
    padding: 2% 0 0;
    border-top: solid 1px #FFF;
}

@media (max-width: 1480px){
	.second-equipment-area .table-equipment-list th {
		font-size: 1.1vw;
		padding: 0.8em 0.5em 0.8em 0;
	}
	.second-equipment-area .table-equipment-list td {
		font-size: 1.1vw;
		padding: 0.8em 0.5em 0.8em 0;
	}
	.second-equipment-area p.equipment-list-text {
		font-size: 1.0vw;
	}
}
@media (max-width: 1380px){
	.second-equipment-area p.equipment-list-text {
		font-size: 1.1vw;
	}
}
@media (max-width: 1200px){
	.second-equipment-area-wrap {
		padding: 0 4%;
	}
	.second-equipment-area h2.equipment-list-title {
		font-size: 1.8rem;
		margin: 0 0 4%;
	}
	.second-equipment-area .table-equipment-list th {
		width: 30%;
		font-size: 1.4rem;
		padding: 0.4em 0.5em 0.4em 0;
	}
	.second-equipment-area .table-equipment-list td {
		width: 70%;
		font-size: 1.4rem;
		padding: 0.4em 0.5em 0.4em 0;
	}
	.second-equipment-area p.equipment-list-text {
		font-size: 1.3rem;
	}
}
@media (max-width: 990px){
	.second-equipment-area {
		padding: 15px 0;
	}
	.second-equipment-area-wrap {
		padding: 5% 8%;
	}
	.second-equipment-area h2.equipment-list-title {
		font-size: 2.4rem;
		margin: 0 0 4%;
	}
	.second-equipment-area .table-equipment-list th {
		width: 20%;
		font-size: 1.6rem;
		padding: 0.5em 0.5em 0.5em 0;
	}
	.second-equipment-area .table-equipment-list td {
		width: 80%;
		font-size: 1.6rem;
		padding: 0.5em 0.5em 0.5em 0;
	}
	.second-equipment-area p.equipment-list-text {
		font-size: 1.6rem;
	}
}
@media (max-width: 499px){
	.second-equipment-area {
		padding: 10px 0;
	}
	.second-equipment-area-wrap {
		padding: 10% 10%;
		background: linear-gradient(90deg, rgba(0, 110, 137, 1.0), rgba(0, 110, 137, 1.0));
	}
	.second-equipment-area h2.equipment-list-title {
		font-size: 6.0vw;
		margin: 0 0 8%;
	}
	.second-equipment-area .table-equipment-list th {
		display: block;
		width: 100%;
		font-size: 1.6rem;
		padding: 0.5em 0.5em 0 0.5em;
	}
	.second-equipment-area .table-equipment-list td {
		display: block;
		width: 100%;
		font-size: 1.6rem;
		padding: 0.5em 0.5em 0.5em 0.5em;
	}
	.second-equipment-area p.equipment-list-text {
		display: block;
		font-size: 1.6rem;
		letter-spacing: 0;
		line-height: 1.6;
		margin: 5% 0 0;
		padding: 5% 0 0;
	}
}


.second-equipment-area .title-wrap > h2.second-workstitle span {
    display: inline-block;
    font-size: 6.0vw;
    font-family: 'Oswald', sans-serif;
    padding: 0 0 0 10px;
}
.second-equipment-area .title-wrap > h2.second-toptitle {
    display: block;
    font-size: 2.4vw;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 5px;
    line-height: 1.0;
    color: #FFF;
    text-shadow: 3px 3px 5px #000000;
    margin: 0 0 6%;
    padding: 0;
}
.second-equipment-area .title-wrap > h3.second-toplead {
    width: 86%;
    font-size: 0.9vw;
    font-weight: 400;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 1px;
    line-height: 1.8;
    color: #FFF;
    margin: 0 0 0 14%;
}

.equipment-img-wrap {
    position: relative;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

.second-material-subtitle {
    position: relative;
    display: block;
    font-size: 1.8vw;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    line-height: 1.0;
    letter-spacing: 1px;
    color: #121212;
    text-align: center;
    margin: 0;
    padding: 5% 0;
}
.second-material-subtitle span {
    display: block;
    font-size: 1.2vw;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 0;
    padding: 0 0 15px;
}
.second-material-subtitle span.up-lead {
    display: block;
    font-size: 1.2vw;
    font-weight: 400;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 0;
    padding: 0 0 5%;
}

.second-about-list {
    position: relative;
    display: block;
    width: 120px;
	height: 760px;
    font-size: 12.0rem;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0 auto;
    padding: 0 0 40px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.second-about-listtext {
    display: block;
	width: 90%;
    font-size: 1.8rem;
    font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
    line-height: 2.0;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0 auto;
    padding: 0;
}

.second-creed-lead {
    position: relative;
	width: 87%;
    display: block;
    font-size: 6.0vw;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    line-height: 1.0;
    letter-spacing: 1px;
    color: #121212;
    text-align: center;
    margin: 0 auto;
    padding: 5% 0;
	border-top: solid 1px #121212;
}
.second-creed-text {
    display: block;
	width: 87%;
    font-size: 1.8vw;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    line-height: 1.5;
    letter-spacing: 2px;
    color: #121212;
    text-align: center;
    margin: 0 auto;
    padding: 0 0 5%;
}
.second-creed-texts {
    display: block;
	width: 87%;
    font-size: 1.8rem;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    line-height: 1.5;
    letter-spacing: 0;
    color: #121212;
    text-align: center;
    margin: 0 auto;
    padding: 0 0 5%;
	border-bottom: solid 1px #121212;
}
.second-creed-texts span {
    display: block;
    font-size: 2.4rem;
    padding: 15px 0 0;
}

.second-sdgs-lead {
    position: relative;
	width: 87%;
    display: block;
    font-size: 1.2vw;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    line-height: 1.5;
    letter-spacing: 1px;
    color: #121212;
    text-align: center;
    margin: 0 auto;
    padding: 5% 0;
	border-top: solid 1px #121212;
}
.second-sdgs-imgwrapper {
	width: 87%;
    text-align: center;
    margin: 0 auto;
    padding: 0 0 5%;
	border-bottom: solid 1px #121212;
}
.second-sdgs-imgwrap {
    display: block;
    margin: 0 auto;
    padding: 5px;
}

@media (max-width: 1680px){
	.second-about-list {
		width: 110px;
		height: 680px;
		font-size: 10.8rem;
		padding: 0 0 20px;
	}
}
@media (max-width: 1200px){
	.second-material-subtitle span.up-lead {
		font-size: 1.6vw;
	}
	.second-material-subtitle {
		font-size: 3.0rem;
		padding: 5% 0;
	}
	.second-material-subtitle span {
		font-size: 1.8rem;
	}
	.second-sdgs-lead {
		font-size: 1.8vw;
		letter-spacing: 0px;
	}
}
@media (max-width: 990px){
	.second-material-subtitle span.up-lead {
		font-size: 2.4vw;
		line-height: 1.5;
		padding: 0 2% 8%;
	}
	.second-creed-text {
		font-size: 2.4vw;
		letter-spacing: 1px;
	}
	.second-sdgs-lead {
		font-size: 2.0vw;
	}
}
@media (max-width: 749px){
	.second-material-subtitle span.up-lead {
		font-size: 3.0vw;
	}
	.second-about-listtext {
		width: 96%;
		font-size: 1.6rem;
		line-height: 1.8;
	}
	.second-creed-lead {
		width: 94%;
		font-size: 6.0rem;
	}
	.second-creed-texts {
		width: 94%;
	}
	.second-sdgs-lead {
		width: 94%;
	}
	.second-creed-text {
		font-size: 3.0vw;
		letter-spacing: 0px;
	}
	.second-creed-texts {
		width: 94%;
	}
	.second-sdgs-lead {
		width: 94%;
		font-size: 1.8rem;
	}
	.second-sdgs-lead br {
		display: none;
	}
	.second-sdgs-imgwrapper {
		width: 94%;
	}
}
@media (max-width: 499px){
	.second-material-subtitle span.up-lead {
		font-size: 1.8rem;
		padding: 0 0 15%;
	}
	.second-material-subtitle {
		font-size: 3.0rem;
		letter-spacing: 0px;
		padding: 10% 0;
	}
	.second-second-title-en {
		font-size: 3.6rem;
		padding: 0 0 20px;
	}
	.second-second-title {
		width: 140px;
		height: 210px;
		font-size: 3.0rem;
		line-height: 1.6;
		padding: 0 0 20px;
	}
	.second-about-list {
		width: 30px;
		height: 200px;
		font-size: 3.0rem;
		padding: 0 0 10px;
	}
	.second-creed-lead {
		width: 100%;
		font-size: 6.0rem;
		padding: 10% 0 10%
	}
	.second-creed-text {
		font-size: 1.8rem;
	}
	.second-creed-texts {
		width: 100%;
		padding: 0 0 10%;
	}
	.second-sdgs-lead {
		width: 100%;
		text-align: left;
		padding: 10% 5%;
	}
	.second-sdgs-imgwrapper {
		width: 100%;
	}
}


/* Footer SDGs Btn
 * --------------------------------------- */
.footer-sdgs-btn {
    display: block;
    margin: 10% auto 0;
    padding: 0;
}
.linkbutton-sdgs {
    display: block;
    position: relative;
    width: 100%;
    height: 60px;
    text-align: left;
	margin: 0 auto;
    padding: 0 20px;
	background: linear-gradient(180deg, rgba(0, 110, 137, 0.9), rgba(103, 187, 223, 0.9));
    line-height: 55px;
	border: solid 1px #FFF;
}
.linkbutton-sdgs::before {
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
	background: linear-gradient(180deg, #666666, #121212);
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0,1);
    -ms-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s,-webkit-transform .3s;
}
.linkbutton-sdgs:hover::before {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1,1);
    -ms-transform: scale(1,1);
    transform: scale(1,1);
}
.linkbutton-sdgs .text {
    display: inline-block;
    position: relative;
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0;
    color: #FFF;
	text-align: center;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-sdgs:hover .text {
    color: #FFF;
}
.linkbutton-sdgs .arrow {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 12px;
    border-color: transparent transparent transparent #FFF;
    position: absolute;
    right: 20px;
    top: 45%;
    margin-top: -3px;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-sdgs:hover .arrow {
    border-color: transparent transparent transparent #FFF;
    right: 25px;
}

@media (max-width: 1200px){
	.linkbutton-sdgs {
		padding: 0 10px;
	}
	.linkbutton-sdgs .text {
		font-size: 1.2rem;
	}
}
@media (max-width: 990px){
	.linkbutton-sdgs {
		padding: 0 20px;
	}
	.linkbutton-sdgs .text {
		font-size: 1.4rem;
		letter-spacing: 1px;
	}
}
@media (max-width: 499px){
	.footer-sdgs-btn {
		margin: 10% auto 8%;
	}
}


.about-contents-section01 {
    position: relative;
    display: block;
    width: 100%;
    padding: 5% 0 6% 20%;
    margin: 0 0 10%;
    background-color: #FFF;
    background: linear-gradient(to left, #FFFFFF 30%, #00600C 30%);
}

.about-contents-textwrapper01 {
    margin: 0;
    padding: 10% 15% 0 0;
}

.about-contents-title01 {
    display: block;
	width: 360px;
	height: 400px;
    font-size: 18.0rem;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #FFF;
    text-align: left;
    margin: 0 0 30px;
    padding: 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.about-contents-title01 span.front {
    display: block;
    font-size: 3.6rem;
    font-weight: 600;
    margin: 0 0 0 30px;
    padding: 10px 0 0;
}
.about-contents-title01 span.back {
    display: block;
    font-size: 7.2rem;
    font-weight: 600;
    margin: 0 30px 0 0;
    padding: 0;
}
.about-contents-textwrap01 {
    display: block;
	width: 380px;
    font-size: 1.6rem;
    font-weight: 400;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 2.0;
    letter-spacing: 0;
    color: #FFF;
    text-align: left;
    margin: 0;
    padding: 0 0 50px;
}

.about-contents-imgwrap01 {
	position: relative;
    display: block;
	width: 100%;
    margin: 0;
    padding: 0;
    text-align: center;
    overflow: hidden;
}


.about-contents-section02 {
    position: relative;
    display: block;
    width: 100%;
    padding: 5% 10% 5% 0;
    margin: 0 0 10%;
    background-color: #FFF;
    background: linear-gradient(to left, #00600C 60%, #FFFFFF 40%);
}

.about-contents-textwrapper02 {
    margin: 0;
    padding: 10% 0 0 20%;
}

.about-contents-title02 {
    display: block;
	width: 360px;
	height: 400px;
    font-size: 18.0rem;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #FFF;
    text-align: left;
    margin: 0 0 30px;
    padding: 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.about-contents-title02 span.front {
    display: block;
    font-size: 3.6rem;
    font-weight: 600;
    margin: 0 0 0 30px;
    padding: 10px 0 0;
}
.about-contents-title02 span.back {
    display: block;
    font-size: 7.2rem;
    font-weight: 600;
    margin: 0 30px 0 0;
    padding: 0;
}
.about-contents-textwrap02 {
    display: block;
	width: 380px;
    font-size: 1.6rem;
    font-weight: 400;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 2.0;
    letter-spacing: 0;
    color: #FFF;
    text-align: left;
    margin: 0;
    padding: 0 0 50px;
}

.about-contents-imgwrap02 {
	position: relative;
    display: block;
	width: 100%;
    margin: 0 0 30px;
    padding: 0;
    text-align: center;
    overflow: hidden;
}

.second-about-photoSection {
    position: relative;
    display: block;
    width: 100%;
	margin: 0;
    padding: 0;
    background-color: #FFF;
}

.about-contents-section03 {
    position: relative;
    display: block;
    width: 100%;
    padding: 0 0 6%;
    margin: 0 0 10%;
    background-color: #FFF;
    background: linear-gradient(to left, #00600C 80%, #FFFFFF 80%);
}

.about-contents-conwrap03 {
    position: relative;
    display: block;
    width: 100%;
	margin: -100px 0 0;
    padding: 5% 5% 5% 10%;
    background-color: #FFFFFF;
}

.about-contents-subtitle03 {
    display: block;
    font-size: 2.133vw;
    font-weight: 600;
    line-height: 1.0;
    margin: 0;
    padding: 0 0 15px 5px;
}
.about-contents-title03 {
    display: block;
    font-size: 4.333vw;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0;
    padding: 0;
}
.about-contents-title03 span {
    font-size: 8.333vw;
    font-weight: 600;
    line-height: 1.0;
    margin: 0;
    padding: 0 0 10px 5px;
}
.about-contents-textwrap03 {
    display: block;
    font-size: 1.6rem;
    font-weight: 400;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 1.8;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0;
    padding: 40px 0 0 5px;
}

.about-contents-section04 {
    position: relative;
    display: block;
    width: 100%;
    padding: 0 0 6%;
    margin: 0 0 10%;
    background-color: #FFF;
    background: linear-gradient(to left, #FFFFFF 20%, #00600C 20%);
}

.about-contents-conwrap04 {
    position: relative;
    display: block;
    width: 100%;
	margin: -100px 0 0;
    padding: 5% 5% 5% 10%;
    background-color: #FFFFFF;
}

.about-contents-subtitle04 {
    display: block;
    font-size: 2.133vw;
    font-weight: 600;
    line-height: 1.0;
    margin: 0;
    padding: 0 0 15px 5px;
}
.about-contents-title04 {
    display: block;
    font-size: 4.333vw;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0;
    padding: 0;
}
.about-contents-title04 span {
    font-size: 8.333vw;
    font-weight: 600;
    line-height: 1.0;
    margin: 0;
    padding: 0 0 10px 5px;
}
.about-contents-textwrap04 {
    display: block;
    font-size: 1.6rem;
    font-weight: 400;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 1.8;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0;
    padding: 40px 0 0 5px;
}

.about-contents-section05 {
    position: relative;
    display: block;
    width: 100%;
    padding: 5% 0 5% 5%;
    margin: 0 0 7%;
    background-color: #FFF;
    background: linear-gradient(to left, #00600C 40%, #FFFFFF 40%);
}

.about-contents-textwrapper05 {
    margin: 0;
    padding: 10% 0 0 20%;
}

.about-contents-title05 {
    display: block;
	width: 360px;
	height: 400px;
    font-size: 18.0rem;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0 0 30px;
    padding: 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.about-contents-title05 span.front {
    display: block;
    font-size: 3.6rem;
    font-weight: 600;
    margin: 0 0 0 30px;
    padding: 10px 0 0;
}
.about-contents-title05 span.back {
    display: block;
    font-size: 7.2rem;
    font-weight: 600;
    margin: 0 30px 0 0;
    padding: 0;
}
.about-contents-textwrap05 {
    display: block;
	width: 380px;
    font-size: 1.6rem;
    font-weight: 400;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 2.0;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0;
    padding: 0 0 50px;
}

.about-contents-imgwrap05 {
	position: relative;
    display: block;
	width: 100%;
    margin: 0 0 30px;
    padding: 0;
    text-align: center;
    overflow: hidden;
}

@media (max-width: 1680px){
	.about-contents-title01 {
		width: 300px;
		height: 320px;
		font-size: 15.0rem;
		font-weight: 600;
		margin: 0 0 30px;
	}
	.about-contents-title01 span.front {
		font-size: 3.0rem;
		margin: 0 0 0 20px;
		padding: 10px 0 0;
	}
	.about-contents-title01 span.back {
		font-size: 6.0rem;
		margin: 0 20px 0 0;
	}
	
	.about-contents-title02 {
		width: 300px;
		height: 320px;
		font-size: 15.0rem;
		font-weight: 600;
		margin: 0 0 30px;
	}
	.about-contents-title02 span.front {
		font-size: 3.0rem;
		margin: 0 0 0 20px;
		padding: 10px 0 0;
	}
	.about-contents-title02 span.back {
		font-size: 6.0rem;
		margin: 0 20px 0 0;
	}
	
	.about-contents-textwrapper05 {
		padding: 10% 10% 0 10%;
	}
	.about-contents-title05 {
		width: 300px;
		height: 320px;
		font-size: 15.0rem;
		font-weight: 600;
		margin: 0 0 30px;
	}
	.about-contents-title05 span.front {
		font-size: 3.0rem;
		margin: 0 0 0 20px;
		padding: 10px 0 0;
	}
	.about-contents-title05 span.back {
		font-size: 6.0rem;
		margin: 0 20px 0 0;
	}
}
@media (max-width: 1480px){
	.about-contents-title01 {
		width: 240px;
		height: 250px;
		font-size: 12.0rem;
		font-weight: 600;
		margin: 0 0 30px;
	}
	.about-contents-title01 span.front {
		font-size: 2.4rem;
		margin: 0 0 0 20px;
		padding: 5px 0 0;
	}
	.about-contents-title01 span.back {
		font-size: 4.8rem;
		margin: 0 20px 0 0;
	}
	.about-contents-textwrap01 {
		width: 300px;
		font-size: 1.5rem;
		letter-spacing: 0;
		line-height: 1.8;
		padding: 0 0 30px;
	}
	
	.about-contents-title02 {
		width: 240px;
		height: 250px;
		font-size: 12.0rem;
		font-weight: 600;
		margin: 0 0 30px;
	}
	.about-contents-title02 span.front {
		font-size: 2.4rem;
		margin: 0 0 0 20px;
		padding: 5px 0 0;
	}
	.about-contents-title02 span.back {
		font-size: 4.8rem;
		margin: 0 20px 0 0;
	}
	.about-contents-textwrap02 {
		width: 300px;
		font-size: 1.5rem;
		letter-spacing: 0;
		line-height: 1.8;
		padding: 0 0 30px;
	}
	
	.about-contents-textwrap03 {
		font-size: 1.5rem;
		line-height: 1.8;
		padding: 30px 0 0 5px;
	}
	.about-contents-textwrap04 {
		font-size: 1.5rem;
		line-height: 1.8;
		padding: 30px 0 0 5px;
	}
	
	.about-contents-title05 {
		width: 240px;
		height: 250px;
		font-size: 12.0rem;
		font-weight: 600;
		margin: 0 0 30px;
	}
	.about-contents-title05 span.front {
		font-size: 2.4rem;
		margin: 0 0 0 20px;
		padding: 5px 0 0;
	}
	.about-contents-title05 span.back {
		font-size: 4.8rem;
		margin: 0 20px 0 0;
	}
	.about-contents-textwrap05 {
		width: 300px;
		font-size: 1.5rem;
		letter-spacing: 0;
		line-height: 1.8;
		padding: 0 0 30px;
	}
}
@media (max-width: 1200px){
	.about-contents-textwrap05 {
		width: 100%;
		font-size: 1.5rem;
		letter-spacing: 0;
		line-height: 1.8;
		padding: 0 0 30px;
	}
}
@media (max-width: 990px){
	.about-contents-section01 {
		padding: 10% 0 8% 20%;
		margin: 0 0 10%;
		background: linear-gradient(to left, #FFFFFF 10%, #00600C 10%);
	}
	.about-contents-textwrapper01 {
		padding: 0;
	}
	.about-contents-textwrap01 {
		width: 500px;
		font-size: 1.5rem;
		letter-spacing: 0;
		line-height: 1.8;
		padding: 0 0 60px;
	}
	.about-contents-textwrap01 br {
		display: none;
	}
	
	.about-contents-section02 {
		padding: 8% 10% 8% 0;
		margin: 0 0 10%;
		background: linear-gradient(to left, #00600C 90%, #FFFFFF 90%);
	}
	.about-contents-textwrapper02 {
		padding: 3% 0 0 20%;
	}
	.about-contents-textwrap02 {
		width: 500px;
		font-size: 1.5rem;
		letter-spacing: 0;
		line-height: 1.8;
		padding: 0 0 0px;
	}

	.about-contents-conwrap03 {
		width: 90%;
		margin: 0 0 0;
		padding: 5% 5% 5% 5%;
	}
	.about-contents-textwrap03 {
		font-size: 1.5rem;
		line-height: 1.8;
		padding: 20px 0 0 5px;
	}
	.about-contents-textwrap03 br {
		display: none;
	}

	.about-contents-conwrap04 {
		width: 90%;
		margin: 0 0 0 10%;
		padding: 5% 5% 5% 5%;
	}
	.about-contents-textwrap04 {
		font-size: 1.5rem;
		line-height: 1.8;
		padding: 20px 0 0 5px;
	}
	.about-contents-textwrap04 br {
		display: none;
	}
	
	.about-contents-section05 {
		padding: 10% 0 5% 5%;
		margin: 0 0 8%;
		background: linear-gradient(to left, #00600C 10%, #FFFFFF 10%);
	}
	.about-contents-textwrapper05 {
		padding: 0 0 0 10%;
	}
	.about-contents-textwrap05 {
		width: 500px;
		font-size: 1.5rem;
		line-height: 1.8;
		padding: 0 0 60px;
	}
}
@media (max-width: 749px){
	.about-contents-section01 {
		padding: 10% 0 8% 0;
		margin: 0 0 60px;
		background: linear-gradient(to left, #FFFFFF 0%, #00600C 0%);
	}
	.about-contents-title01 {
		width: 240px;
		height: 250px;
		margin: 0 auto 30px;
	}
	.about-contents-textwrap01 {
		width:90%;
		font-size: 1.5rem;
		line-height: 1.8;
		margin: 0 auto;
		padding: 0 0 60px;
	}
	
	.about-contents-section02 {
		padding: 10% 0 8% 0;
		margin: 0 0 60px;
		background: linear-gradient(to left, #00600C 100%, #FFFFFF 100%);
	}
	.about-contents-textwrapper02 {
		padding: 0 0 0 0;
	}
	.about-contents-title02 {
		width: 240px;
		height: 250px;
		margin: 0 auto 30px;
	}
	.about-contents-textwrap02 {
		width:90%;
		font-size: 1.5rem;
		line-height: 1.8;
		margin: 0 auto;
		padding: 0 0 0;
	}
	
	.about-contents-section03 {
		width: 100%;
		padding: 0;
		margin: 0 0 60px;
		background: linear-gradient(to left, #00600C 0%, #FFFFFF 0%);
	}
	.about-contents-conwrap03 {
		width: 90%;
		margin: 0 auto;
		padding: 5% 0 0;
	}

	.about-contents-section04 {
		width: 100%;
		padding: 0;
		margin: 0 0 60px;
		background: linear-gradient(to left, #FFFFFF 100%, #00600C 100%);
	}
	.about-contents-conwrap04 {
		width: 90%;
		margin: 0 auto;
		padding: 5% 0 0;
	}
	
	.about-contents-section05 {
		padding: 10% 0 5%;
		margin: 0 0 0;
		background: linear-gradient(to left, #00600C 0%, #FFFFFF 0%);
	}
	.about-contents-textwrapper05 {
		padding: 0 0 0 0;
	}
	.about-contents-title05 {
		width: 240px;
		height: 250px;
		margin: 0 auto 30px;
	}
	.about-contents-textwrap05 {
		width: 90%;
		margin: 0 auto;
		padding: 0 0 60px;
	}
}
@media (max-width: 499px){
	.about-contents-section01 {
		padding: 40px 0 0 0;
		margin: 0;
	}
	.about-contents-title01 {
		width: 190px;
		height: 200px;
		font-size: 9.6rem;
		font-weight: 600;
		margin: 0 auto 30px;
	}
	.about-contents-title01 span.front {
		font-size: 2.0rem;
		margin: 0 0 0 20px;
		padding: 5px 0 0;
	}
	.about-contents-title01 span.back {
		font-size: 3.8rem;
		margin: 0 20px 0 0;
	}
	.about-contents-textwrap01 {
		width: 86%;
		font-size: 1.5rem;
		line-height: 1.8;
		margin: 0 auto;
		padding: 0 0 40px;
	}
	
	.about-contents-section02 {
		padding: 0 0 0 0;
		margin: 0;
	}
	.about-contents-title02 {
		width: 190px;
		height: 200px;
		font-size: 9.6rem;
		font-weight: 600;
		margin: 0 auto 30px;
	}
	.about-contents-title02 span.front {
		font-size: 2.0rem;
		margin: 0 0 0 20px;
		padding: 5px 0 0;
	}
	.about-contents-title02 span.back {
		font-size: 3.8rem;
		margin: 0 20px 0 0;
	}
	.about-contents-textwrap02 {
		width: 86%;
		font-size: 1.5rem;
		line-height: 1.8;
		margin: 0 auto;
		padding: 0 0 40px;
	}
	
	.about-contents-section03 {
		width: 100%;
		padding: 0;
		margin: 0 0 40px;
	}
	.about-contents-conwrap03 {
		width: 86%;
		padding: 40px 0 0;
	}
	.about-contents-subtitle03 {
		font-size: 2.0rem;
		text-align: center;
		padding: 0 0 10px 0;
	}
	.about-contents-title03 {
		font-size: 3.8rem;
		text-align: center;
	}
	.about-contents-title03 span {
		display: block;
		font-size: 7.2rem;
		padding: 0 0 10px
	}
	.about-contents-textwrap03 {
		font-size: 1.5rem;
		line-height: 1.8;
		padding: 30px 0 0 0;
	}
	
	
	.about-contents-section04 {
		width: 100%;
		padding: 0;
		margin: 0 0 40px;
	}
	.about-contents-conwrap04 {
		width: 86%;
		padding: 40px 0 0;
	}
	.about-contents-subtitle04 {
		font-size: 2.0rem;
		text-align: center;
		padding: 0 0 10px 0;
	}
	.about-contents-title04 {
		font-size: 3.8rem;
		text-align: center;
	}
	.about-contents-title04 span {
		display: block;
		font-size: 7.2rem;
		padding: 0 0 10px
	}
	.about-contents-textwrap04 {
		font-size: 1.5rem;
		line-height: 1.8;
		padding: 30px 0 0 0;
	}
	
	.about-contents-title05 {
		width: 190px;
		height: 200px;
		font-size: 9.6rem;
		font-weight: 600;
		margin: 0 auto 30px;
	}
	.about-contents-title05 span.front {
		font-size: 2.0rem;
		margin: 0 0 0 20px;
		padding: 5px 0 0;
	}
	.about-contents-title05 span.back {
		font-size: 3.8rem;
		margin: 0 20px 0 0;
	}
	.about-contents-textwrap05 {
		width: 86%;
		padding: 0 0 40px;
	}
}


/*------------------------------------------------------------------
[Works]
*/

.second-title-wrap-works {
    display: flex;
    flex-wrap: wrap;
	flex-direction: row-reverse;
	width: 240px;
	height: 600px;
	margin: 0 auto;
}

.second-title-works {
    display: block;
    width: 36px;
	height: auto;
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #00600C;
    text-align: left;
    margin: 0 0 0 30px;
    padding: 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

.second-text-works {
    display: inline-block;
	width: 60px;
    height: auto;
    font-size: 1.6rem;
    font-weight: 400;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 2.0;
    letter-spacing: 1px;
    color: #121212;
    text-align: left;
    margin: 0 40px 0 0;
    padding: 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

@media (max-width: 1680px){
	.second-title-wrap-works {
		width: 230px;
		height: 580px;
	}
	.second-title-works {
		width: 40px;
		font-size: 3.6rem;
		margin: 0 0 0 20px;
	}
}
@media (max-width: 1480px){
	.second-title-wrap-works {
		width: 220px;
		height: 520px;
	}
	.second-title-works {
		width: 36px;
		font-size: 3.2rem;
		margin: 0 0 0 20px;
	}
	.second-text-works {
		width: 60px;
		font-size: 1.6rem;
		line-height: 1.8;
		letter-spacing: 0;
		margin: 0 30px 0 0;
	}
}
@media (max-width: 1380px){
	.second-title-wrap-works {
		width: 200px;
		height: 500px;
	}
	.second-title-works {
		width: 30px;
		font-size: 3.0rem;
		margin: 0 0 0 20px;
	}
	.second-text-works {
		width: 60px;
		font-size: 1.5rem;
		line-height: 1.8;
		letter-spacing: 0;
		margin: 0 30px 0 0;
	}
}
@media (max-width: 1200px){
	.second-title-wrap-works {
		width: 110px;
		height: 440px;
	}
	.second-text-works {
		display: none;
	}
}


.second-works-title-section {
    position: relative;
    display: block;
    width: 100%;
    padding: 15% 12% 80px;
    background-color: #FFF;
}

.second-works-title {
    position: relative;
    display: block;
    width: 180px;
	height: 450px;
    font-size: 4.0rem;
    font-weight: 600;
    line-height: 1.6;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0 auto 80px;
    padding: 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

.second-works-listtext {
    display: block;
    width: 90%;
    font-size: 1.8rem;
    font-weight: 500;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 2.0;
    letter-spacing: 1px;
    color: #121212;
    text-align: center;
    margin: 0 auto;
    padding: 0;
}

@media (max-width: 1680px){
	.second-works-listtext {
		width: 100%;
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 2.0;
		letter-spacing: 1px;
	}
}
@media (max-width: 1480px){
	.second-works-title {
		width: 140px;
		height: 340px;
		font-size: 3.0rem;
		line-height: 1.6;
		margin: 0 auto 80px;
	}
}
@media (max-width: 1300px){
	.second-works-listtext {
		font-size: 1.6rem;
		line-height: 1.8;
		letter-spacing: 1px;
	}
}
@media (max-width: 1200px){
	.second-works-title {
		margin: 0 auto 40px;
	}
}
@media (max-width: 499px){
	.second-works-title-section {
		padding: 60px 10% 60px;
	}
	.second-works-listtext {
		font-size: 1.6rem;
		line-height: 1.8;
		letter-spacing: 1px;
		text-align: left;
	}
}


.second-works-conwrap03 {
    margin-top: -10%;
}

.second-works-textwrapper03 {
    margin: 0;
    padding: 40% 15% 0;
}


.second-works-leadwrap01 {
    display: block;
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 1px;
    color: #FFF;
    text-align: left;
    margin: 0;
    padding: 0 0 40px;
}
.second-works-leadwrap02 {
    display: block;
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 1px;
    color: #121212;
    text-align: left;
    margin: 0;
    padding: 0 0 40px;
}


.second-works-textwrap01 {
    display: block;
    font-size: 1.6rem;
    font-weight: 400;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 2.0;
    letter-spacing: 0;
    color: #FFF;
    text-align: left;
    margin: 0;
    padding: 20px 0;
	border-top: solid 1px #FFF;
	border-bottom: solid 1px #FFF;
}
.second-works-textwrap02 {
    display: block;
    font-size: 1.6rem;
    font-weight: 400;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 2.0;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0;
    padding: 20px 0;
	border-top: solid 1px #121212;
	border-bottom: solid 1px #121212;
}
.second-works-textwrap03 {
    display: block;
    font-size: 1.6rem;
    font-weight: 400;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 2.0;
    letter-spacing: 0;
    color: #FFF;
    text-align: left;
    margin: 0;
    padding: 20px 0;
	border-top: solid 1px #FFF;
	border-bottom: solid 1px #FFF;
}

@media (max-width: 1480px){
	.second-works-textwrap01 {
		font-size: 1.5rem;
		line-height: 1.8;
		padding: 15px 0;
	}
	.second-works-textwrap02 {
		font-size: 1.5rem;
		line-height: 1.8;
		padding: 15px 0;
	}
	.second-works-textwrap03 {
		font-size: 1.5rem;
		line-height: 1.8;
		padding: 15px 0;
	}
}
@media (max-width: 990px){
	.second-works-conwrap03 {
		margin-top: 10%;
	}
	.second-works-textwrapper03 {
		padding: 5% 45% 0 0;
	}
	.second-works-textwrap01 {
		color: #121212;
		margin: 0 0 50px;
		padding: 15px 0;
		border-top: solid 1px #121212;
		border-bottom: solid 1px #121212;
	}
	.second-works-textwrap02 {
		font-size: 1.5rem;
		line-height: 1.8;
		padding: 15px 0;
	}
	.second-works-textwrap03 {
		color: #121212;
		margin: 0 0 0;
		padding: 15px 0;
		border-top: solid 1px #121212;
		border-bottom: solid 1px #121212;
	}
}
@media (max-width: 499px){
	.second-works-textwrapper03 {
		padding: 10% 10% 0 0;
	}
}


/*------------------------------------------------------------------
[Company]
*/

.second-title-wrap-company {
    display: flex;
    flex-wrap: wrap;
	flex-direction: row-reverse;
	width: 300px;
	height: 500px;
	margin: 0 auto;
}

.second-title-company {
    display: block;
    width: 90px;
	height: auto;
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: 0;
    color: #00600C;
    text-align: left;
    margin: 0 0 0 40px;
    padding: 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

.second-company-title {
    position: relative;
    display: block;
    width: 40px;
    font-size: 4.0rem;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0 auto 80px;
    padding: 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

.second-company-title.t7 {
	height: 290px;
}
.second-company-title.t6 {
	height: 250px;
}
.second-company-title.t4 {
	height: 170px;
}
.second-company-title.t3 {
	height: 130px;
}

.second-company-greeting-section {
    position: relative;
    display: block;
    width: 100%;
    padding: 15% 12% 10%;
    margin: 0;
    background-color: #FFF;
}

.second-company-greetingtext {
    display: block;
    width: 90%;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 2.0;
    letter-spacing: 1px;
    color: #000;
    text-align: left;
    margin: 0 auto 30px;
    padding: 0;
}
.second-company-greetingname {
    display: block;
    width: 100%;
    font-size: 2.8rem;
    font-weight: 500;
    line-height: 1.0;
    letter-spacing: 2px;
    color: #121212;
    text-align: right;
    margin: 0 auto;
    padding: 0;
}
.second-company-greetingname span {
    font-size: 2.0rem;
    padding: 0 0 10px;
}

.second-company-mission-section {
    position: relative;
    display: block;
    width: 100%;
    padding: 0 10% 5%;
    margin: 0;
    background-color: #FFF;
}

.second-company-missiontext {
    display: block;
    width: 100%;
    font-size: 10.333vh;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0;
    color: #121212;
    text-align: center;
    margin: 0 auto;
    padding: 0;
}

.second-company-actionslists {
    margin-bottom: 0;
    font-size: 2.4rem;
    font-weight: 600;
    text-align: center;
    line-height: 1.4;
    letter-spacing: 0;
    color: #000;
	margin: 0;
    padding: 30px 0;
}

dl.second-company-actionslist {
    width: 80%;
    padding: 0;
    margin: 0 auto;
}
dl.second-company-actionslist dt {
    float: left;
    width: 160px;
    font-size: 2.4rem;
    font-weight: 600;
    font-family: 'Oswald', sans-serif;
    color: #121212;
    text-align: center;
    line-height: 1.4;
    letter-spacing: 0;
    padding: 25px 0 20px;
    margin: 0;
}
dl.second-company-actionslist dd {
    margin-left: 160px;
    margin-bottom: 0;
    font-size: 2.4rem;
    font-weight: 600;
    text-align: left;
    line-height: 1.4;
    letter-spacing: 0;
    color: #000;
    padding: 25px 30px 22px;
}

@media (max-width: 1480px){
	.second-title-wrap-company {
		width: 260px;
		height: 400px;
	}
	.second-title-company {
		width: 74px;
		font-size: 3.0rem;
		line-height: 1.3;
		margin: 0 0 0 30px;
	}
	.second-company-title {
		width: 36px;
		font-size: 3.6rem;
		margin: 0 auto 60px;
	}
	.second-company-title.t7 {
		height: 260px;
	}
	.second-company-title.t6 {
		height: 220px;
	}
	.second-company-title.t4 {
		height: 150px;
	}
	.second-company-title.t3 {
		height: 110px;
	}
	.second-company-greetingtext {
		width: 100%;
		font-size: 1.6rem;
		letter-spacing: 1px;
		margin: 0 auto 30px;
	}
}
@media (max-width: 1200px){
	.second-title-wrap-company {
		width: 170px;
		height: 340px;
	}
	.second-company-greeting-section {
		padding: 15% 5% 10%;
	}
	.second-company-mission-section {
		padding: 0 5% 5%;
	}
}
@media (max-width: 990px){
	.second-company-greetingtext {
		width: 100%;
		font-size: 1.6rem;
		letter-spacing: 1px;
		margin: 0 auto 30px;
	}
	.second-company-greetingname {
		width: 100%;
		margin: 0 auto 50px;
	}
	.second-company-missiontext {
		font-size: 6.0rem;
	}
	.second-company-actionslists {
		font-size: 1.8rem;
		padding: 20px 0;
	}
}
@media (max-width: 749px){
	.second-company-missiontext {
		font-size: 4.8rem;
	}
}
@media (max-width: 499px){
	.second-company-greeting-section {
		padding: 15% 7% 50px;
	}
	.second-company-mission-section {
		padding: 0 7% 50px;
	}
	.second-company-title {
		width: 30px;
		font-size: 3.0rem;
		margin: 0 auto 30px;
	}
	.second-company-title.t7 {
		height: 220px;
	}
	.second-company-title.t6 {
		height: 190px;
	}
	.second-company-title.t4 {
		height: 130px;
	}
	.second-company-title.t3 {
		height: 100px;
	}
	.second-company-greetingtext {
		width: 100%;
		font-size: 1.6rem;
		letter-spacing: 0;
		margin: 0 auto 20px;
	}
	.second-company-greetingname {
		font-size: 2.4rem;
		margin: 0 auto 40px;
	}
	.second-company-greetingname span {
		font-size: 1.8rem;
		padding: 0;
	}
	.second-company-missiontext {
		font-size: 2.8rem;
	}
}


/*!------------------------------------------------------------------
[Table Overview]
*/

table.overvew {
    width: 90%;
    margin: 0 auto;
    border-collapse: separate;
    border-spacing: 20px 0;
}
table.overvew th {
    width: 20%;
    font-size: 1.6rem;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    color: #000;
    letter-spacing: 1px;
    vertical-align: middle;
	text-align: center;
    padding: 1.5em 1.0em;
    border-bottom: solid 1px #121212;
}
table.overvew th.first {
    border-top: solid 1px #121212;
}
table.overvew th span {
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0px;
}
table.overvew td {
    width: 75%;
    text-align: left;
    vertical-align: middle;
    font-size: 1.6rem;
    font-weight: 400;
    font-family: 'Noto Serif JP', serif;
    color: #000;
    letter-spacing: 1px;
    line-height: 1.6;
    padding: 1.5em 1.0em;
    border-bottom: solid 1px #121212;
}
table.overvew td.first {
    border-top: solid 1px #121212;
}
table.overvew td a {
	display: block;
    font-size: 1.8rem;
    font-weight: 400;
    color: #000;
    letter-spacing: 0px;
    line-height: 1.0;
    padding: 5px 0 0;
}
table.overvew td a:hover {
    color: #005000;
}
table.overvew td a.tel {
    font-size: 1.8rem;
    font-weight: 400;
    color: #000;
    letter-spacing: 1px;
    line-height: 1.6;
    padding: 0;
}
table.overvew td a.address-gm {
    font-size: 1.2rem;
    font-weight: 400;
    color: #000;
    letter-spacing: 0px;
    line-height: 1.0;
    padding: 10px 0 15px;
}
table.overvew td a.address-gm:hover {
    color: #005000;
}

.office-gmap {
    position: relative;
    width: 100%;
    height: 400px;
    overflow: hidden;
    border-radius: 20px;
}
.office-gmap iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

dl.overvew-content-wrap {
    width: 100%;
    padding: 0;
    margin: 0;
}
dl.overvew-content-wrap dt {
    float: left;
    width: 25px;
    font-size: 1.6rem;
    font-weight: 400;
    color: #000;
    text-align: left;
    line-height: 1.4;
    padding: 5px 0;
    margin: 0;
}
dl.overvew-content-wrap dd {
    margin-left: 25px;
    font-size: 1.6rem;
    font-weight: 400;
    text-align: left;
    line-height: 1.4;
    letter-spacing: 1px;
    color: #000;
    padding: 5px 0;
}
dl.overvew-content-wrap dd span {
	display: block;
    font-size: 1.6rem;
    font-weight: 600;
	padding: 0 0 10px;
}
dl.overvew-content-wrap dd br {
	display: none;
}

@media (max-width: 1480px){
	table.overvew th {
		font-size: 1.6rem;
		letter-spacing: 0;
		padding: 1.5em 1.0em;
	}
	table.overvew td {
		font-size: 1.6rem;
		letter-spacing: 0;
		padding: 1.5em 1.0em;
	}
	table.overvew td a {
		font-size: 1.6rem;
		padding: 5px 0 0;
	}
	table.overvew td a.tel {
		font-size: 1.6rem;
		letter-spacing: 0;
		line-height: 1.6;
	}
	table.overvew td a.address-gm {
		font-size: 1.2rem;
		padding: 10px 0 15px;
	}
	dl.overvew-content-wrap dt {
		font-size: 1.6rem;
		padding: 10px 0;
	}
	dl.overvew-content-wrap dd {
		font-size: 1.5rem;
		letter-spacing: 0;
		padding: 10px 0;
	}
	dl.overvew-content-wrap dd span {
		font-size: 1.6rem;
		padding: 0 0 10px;
	}
}
@media (max-width: 1200px){
	table.overvew {
		width: 100%;
	}
}
@media (max-width: 499px){
	table.overvew {
		width: 100%;
		border-spacing: 0px 0;
	}
	table.overvew th {
		display: block;
		width: 100%;
		font-size: 1.8rem;
		letter-spacing: 0;
		text-align: left;
		padding: 1.5em 0.5em 0.4em;
		border-bottom: none;
	}
	table.overvew th br {
		display: none;
	}
	table.overvew td {
		display: block;
		width: 100%;
		font-size: 1.6rem;
		letter-spacing: 0;
		padding: 0 0.5em 1.5em;
	}
	table.overvew td.first {
		border-top: none;
	}
	table.overvew td span {
		display: block;
	}
}


/*------------------------------------------------------------------
[Past Work]
*/

.second-results-title-section {
    position: relative;
    display: block;
    width: 100%;
    padding: 100px 5% 0;
    margin: 0;
    background-color: #FFF;
}

.second-results-title-en {
    display: block;
    font-size: 4.8rem;
    font-weight: 600;
    font-family: 'Oswald', sans-serif;
    line-height: 1.0;
    letter-spacing: 0;
    color: #00600C;
    text-align: center;
    margin: 0;
    padding: 0 0 40px;
}
.second-results-title {
    display: block;
    width: 40px;
	height: 160px;
    font-size: 4.0rem;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0 auto 80px;
    padding: 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.second-results-lead {
    display: block;
    font-size: 2.0rem;
    font-weight: 500;
    line-height: 2.0;
    letter-spacing: 0;
    color: #121212;
    text-align: center;
    margin: 0 auto 80px;
    padding: 0;
}


.second-results-photo-section {
    position: relative;
    display: block;
    width: 100%;
    padding: 0 5% 5%;
    margin: 0;
    background-color: #FFF;
}

@media (max-width: 1480px){
	.second-results-title-en {
		font-size: 4.0rem;
		padding: 0 0 30px;
	}
	.second-results-title {
		width: 36px;
		height: 150px;
		font-size: 3.6rem;
		margin: 0 auto 60px;
	}
	.second-results-lead {
		font-size: 1.8rem;
		margin: 0 auto 60px;
	}
}
@media (max-width: 990px){
	.second-results-lead {
		font-size: 1.6rem;
		margin: 0 auto 40px;
	}
}
@media (max-width: 749px){
	.second-results-lead br {
		display: none;
	}
	.second-results-title {
		width: 30px;
		height: 130px;
		font-size: 3.0rem;
		margin: 0 auto 40px;
	}
}
@media (max-width: 499px){
	.second-results-title-en {
		font-size: 3.6rem;
		padding: 0 0 20px;
	}
	.second-results-lead {
		font-size: 1.6rem;
		text-align: left;
		margin: 0 auto 40px;
		padding: 0 2%;
	}
}


/*!------------------------------------------------------------------
[topics.html Pagination]
*/

.second-topics-list-section {
    position: relative;
    display: block;
    width: 100%;
    padding: 5% 10%;
    margin: 0;
    background-color: #FFF;
}

.second-topics-title {
    display: block;
    width: 120px;
	height: 290px;
    font-size: 4.0rem;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0 auto 80px;
    padding: 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

@media (max-width: 1480px){
	.second-topics-list-section {
		padding: 5% 10%;
	}
	.second-topics-title {
		width: 110px;
		height: 260px;
		font-size: 3.6rem;
		margin: 0 auto 60px;
	}
}
@media (max-width: 1200px){
	.second-topics-list-section {
		padding: 8% 5%;
	}
}
@media (max-width: 749px){
	.second-topics-title {
		width: 90px;
		height: 220px;
		font-size: 3.0rem;
		margin: 0 auto 20px;
	}
}
@media (max-width: 499px){
	.second-topics-list-section {
		padding: 10% 5%;
	}
}

.pagination {
    display: flex;
    justify-content: center; /* ページネーションを中央揃え */
    padding: 40px 0 10px; /* 既存のパディング */
    list-style: none; /* 不要なlist-styleを削除 */
}

.pagination a {
    font-family: 'Roboto', sans-serif;
    color: #212529; /* デフォルトのリンクカラー */
    padding: 10px 15px; /* 各リンクのパディング */
    margin: 0 5px;
    text-decoration: none; /* 下線を消す */
    border: 2px solid #212529; /* ボーダーを追加 */
    transition: background-color 0.3s, color 0.3s;
}

.pagination a:hover {
    background-color: #212529; /* ホバー時の背景色 */
    color: white; /* ホバー時のテキスト色 */
}

.pagination .current {
    font-family: 'Roboto', sans-serif;
    color: white;
    background-color: #212529;
    border-color: #212529;
    padding: 10px 15px;
    margin: 0 5px;
}


/* .pagination {
    display: -ms-flexbox;
    display: flex;
    padding-left: 0;
    list-style: none;
    border-radius: 4px;
    padding: 40px 0 10px;
}

.page-item.active .page-link {
    font-family: 'Roboto', sans-serif;
    color: white;
    background: #065FFF;
    border-color: #065FFF;
} */

.page-link {
    position: relative;
    display: block;
    font-family: 'Roboto', sans-serif;
    line-height: 1.25;
    color: #000;
    margin: 4px;
    padding: 0.5rem 1.0rem;
    background-color: #fff;
	background-size: 100% 90%;
    border: 1px solid rgba(150, 150, 155, 0.5);
    border-radius: 4px;
}

.page-link:hover {
    z-index: 2;
    color: rgba(255, 255, 255, 1.0);
    text-decoration: none;
    background-color: #43A4C7;
    border-color: #43A4C7;
}

.page-item.active .page-link, 
.page-item.active .page-link:focus, 
.page-item.active .page-link:hover {
    background-color: #43A4C7;
    border-color: #43A4C7;
    color: #FFF;
}


.linkbutton-topics-wrapper {
    display: block;
    text-align: center;
    margin: 40px 0;
    padding: 0;
}

.linkbutton-topics-wrapper a {
    display: block;
    width: 100%;
    font-size: 1.8rem;
    font-family: 'Oswald', sans-serif;
    font-weight: 400;
    line-height: 1.0;
    letter-spacing: 0px;
    color: #121212;
    text-align: center;
    padding: 3rem 0;
    background-color: #FFF;
	border: solid 2px #121212;
    text-decoration: none;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.linkbutton-topics-wrapper a:hover {
    color: #FFF;
    background-color: #43A4C7;
    border: solid 2px #43A4C7;
}

@media (max-width: 1200px){
	.second-h1title-wrapper {
		padding: 4rem 0 3rem;
	}
	.second-topics-section {
		padding: 40px 0 20px;
	}
	.second-topics-section02 {
		padding: 40px 0 20px;
	}
}
@media (max-width: 749px){
	.linkbutton-topics-wrapper a {
		font-size: 1.6rem;
		letter-spacing: 1px;
		padding: 2rem 0;
	}
}
@media (max-width: 499px){
	.second-topics-section {
		padding: 20px 0 40px;
	}
	.second-topics-section02 {
		padding: 20px 0 40px;
	}
	.linkbutton-topics-wrapper {
		margin: 10px 0 0;
	}
}


.topics-item-wrap {
    padding: 0 0 80px;
}

.topics-item-imgwrap {
	width: 100%;
    padding: 0 0 30px;
}

.topics-item-date {
    font-size: 1.4rem;
    font-weight: 400;
    font-family: 'Roboto', sans-serif;
    line-height: 1.0;
    letter-spacing: 1px;
    color: #121212;
    margin: 0;
    padding: 0 0 15px 20px;
}

.topics-item-cate ul {
    padding-left: 20px;
    margin-top: 0;
    margin-bottom: 20px;
    list-style: none;
}

.topics-item-cate ul li a {
    display: inline-block;
    font-size: 1.4rem;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    line-height: 1.0;
    letter-spacing: 1px;
    color: #FFF;
    padding: 5px;
    margin-bottom: 10px;
    background-color: #006E89;
    border: solid 2px #006E89;
}

.topics-item-title {
    font-size: 2.4rem;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    line-height: 1.5;
    letter-spacing: 1px;
    color: #121212;
    margin: 0 0 50px;
    padding: 0 0 40px 20px;
    border-bottom: solid 2px #121212;
}

.topics-item-txt {
    font-size: 1.8rem;
    font-weight: 400;
    font-family: 'Noto Serif JP', serif;
    line-height: 2.0;
    letter-spacing: 0;
    color: #000;
    margin: 0;
    padding: 0 20px;
}

.topics-item-txt img {
    width: auto;
    max-width: auto;
    height: auto;
}

.btn.btn-t {
    width: 100%;
    font-size: 1.4rem;
    font-weight: 600;
	font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 1px;
    text-align: center;
    background: #FFF;
    color: #121212;
	padding: 2rem 2rem;
    border: solid 2px #121212;
}

.btn.btn-t:hover, 
.btn.btn-t:focus {
    background: #43A4C7;
    color: #FFF;
    border: solid 2px #43A4C7;
}

@media (max-width: 1480px){
	.topics-item-title {
		font-size: 2.0rem;
		letter-spacing: 1px;
		margin: 0 0 40px;
		padding: 0 0 40px 20px;
	}
	.topics-item-txt {
		font-size: 1.6rem;
		line-height: 1.8;
		padding: 0 20px;
	}
}
@media (max-width: 499px){
	.topics-item-wrap {
		padding: 0 0 40px;
	}
	.topics-item-date {
		letter-spacing: 0px;
		padding: 0 0 10px 0px;
	}
	.topics-item-cate ul {
		padding-left: 0px;
		margin-bottom: 10px;
	}
	.topics-item-title {
		font-size: 1.8rem;
		letter-spacing: 1px;
		margin: 0 0 20px;
		padding: 0 0 20px 0px;
	}
	.topics-item-txt {
		font-size: 1.6rem;
		line-height: 1.8;
		letter-spacing: 0px;
		padding: 0 0px;
	}
	.topics-btnwrap {
		margin-bottom: 20px;
	}
	.btn-wrap-newsf {
		margin-bottom: 15px;
	}
	.btn.btn-t {
		letter-spacing: 1px;
		padding: 1rem 2rem;
		border-radius: 6px;
	}
}


 /* ------------------------------------------------------------------
contact.html
------------------------------------------------------------------- */

.second-contact-contents-section {
    position: relative;
    display: block;
    width: 100%;
    padding: 5% 15% 5%;
    margin: 0;
    background-color: #FFF;
}

.second-contact-title {
    display: block;
    width: 40px;
    height: 250px;
    font-size: 4.0rem;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #121212;
    text-align: left;
    margin: 0 auto 80px;
    padding: 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

@media (max-width: 1480px){
	.second-contact-contents-section {
		padding: 5% 10% 5%;
	}
	.second-contact-title {
		width: 36px;
		height: 230px;
		font-size: 3.6rem;
		margin: 0 auto 60px;
	}
}
@media (max-width: 990px){
	.second-contact-contents-section {
		padding: 5% 6% 5%;
	}
}
@media (max-width: 749px){
	.second-contact-title {
		width: 30px;
		height: 190px;
		font-size: 3.0rem;
		margin: 0 auto 10px;
	}
}
@media (max-width: 499px){
	.second-contact-contents-section {
		padding: 5% 6% 5%;
	}
}

h2.contact-detail-text {
    display: block;
    width: 100%;
    color: #121212;
	font-size: 1.6rem;
	font-weight: 600;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 1px;
	line-height: 1.8;
    padding: 50px 0 0;
    margin: 0;
	text-align: center;
}

p.contacts-txt-title {
    display: block;
    width: 100%;
    color: #121212;
	font-size: 1.8rem;
	font-weight: 400;
    letter-spacing: 0;
	line-height: 1.5;
    padding: 0 0 50px;
    margin: 0;
	text-align: center;
}
p.contacts-txt-title br {
    display: none;
}

p.contacts-txt-titles {
    display: block;
    width: 100%;
    color: #121212;
	font-size: 1.8rem;
	font-weight: 400;
    letter-spacing: 0;
	line-height: 1.5;
    padding: 0;
    margin: 0;
	text-align: center;
}
p.contacts-txt-title-name {
    display: block;
    width: 100%;
    color: #121212;
	font-size: 1.8rem;
	font-weight: 400;
    letter-spacing: 1px;
	line-height: 1.0;
    padding: 0 0 20px;
    margin: 0;
	text-align: center;
}
p.contacts-txt-title-address {
    display: block;
    width: 100%;
    color: #121212;
	font-size: 1.8rem;
	font-weight: 400;
    letter-spacing: 1px;
	line-height: 1.5;
    padding: 0 0 10px;
    margin: 0;
	text-align: center;
}
.contact-01-wrap {
    width: 80%;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
    margin-top: 0;
    margin-right: auto;
    margin-bottom: 10px;
    margin-left: auto;
    background-color: #FFF;
}
.item-contacts-l {
    font-size: 7.2rem;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 1.0;
    color: #43A4C7;
    margin: 0;
    padding: 0 0 10px;
	text-align: center;
}
.item-contacts-l a {
    font-size: 7.2rem;
    font-weight: 600;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 0;
    line-height: 1.0;
    color: #43A4C7;
}
.item-contacts-l-teltime {
    font-size: 1.6rem;
    font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 1px;
    line-height: 1.0;
    color: #121212;
    margin: 0;
    padding: 0 0 40px;
	text-align: center;
}
.item-contacts-r {
	font-size: 3.0rem;
	font-weight: 400;
    letter-spacing: 1px;
	line-height: 1.0;
    color: #212121;
    margin: 0;
    padding: 0 0 10px;
	text-align: left;
}
p.contacts-address {
    display: block;
    width: 100%;
    color: #109954;
	font-size: 1.6rem;
    font-family: 'Noto Sans Japanese', sans-serif;
    letter-spacing: 1px;
	line-height: 1.5;
    padding: 0;
    margin: 0 0 30px;
}
p.contacts-address span {
    display: block;
    width: 100%;
    color: #109954;
	font-size: 1.6rem;
    font-family: 'Noto Sans Japanese', sans-serif;
	font-weight: 600;
    letter-spacing: 1px;
	line-height: 1.5;
    padding: 0;
    margin: 0;
}
@media (max-width: 1480px){
	p.contacts-txt-title {
		font-size: 1.8rem;
	}	
	p.contacts-address {
		font-size: 1.4rem;
	}
}
@media (max-width: 1300px){
	h2.contact-detail-text {
		font-size: 1.6rem;
		letter-spacing: 1px;
		line-height: 1.8;
		padding: 40px 0 0;
	}
}
@media (max-width: 1200px){
	h2.contact-detail-text {
		padding: 30px 0 0;
	}
}
@media (max-width: 990px){
	.contact-lead {
		font-size: 1.6rem;
		letter-spacing: 1px;
		padding: 0 0 50px;
	}
	p.contacts-txt-title {
		font-size: 1.6rem;
		letter-spacing: 0;
		padding: 0 0 5%;
	}	
	p.contacts-txt-titles {
		font-size: 1.6rem;
		letter-spacing: 0;
		padding: 0 0 5%;
	}
}
@media (max-width: 749px){
	h2.contact-detail-text {
		font-size: 1.5rem;
	}
	.contact-title01-main {
		width: 220px;
		font-size: 2.0rem;
		letter-spacing: 10px;
		padding: 10px 0;
	}
	.contact-lead {
		font-size: 1.6rem;
		letter-spacing: 1px;
		padding: 0 10% 50px;
	}
	p.contacts-txt-titles br {
		display: none;
	}
}
@media (max-width: 499px){
	h2.contact-detail-text {
		font-size: 1.5rem;
		letter-spacing: 0;
		line-height: 1.6;
		padding: 20px 15px 0;
		text-align: left;
	}
	h2.contact-detail-text br {
		display: none;
	}
	.contact-lead {
		font-size: 1.6rem;
		line-height: 1.8;
		letter-spacing: 0;
		padding: 0 10% 30px;
		text-align: left;
	}
	.contact-lead br {
		display: none;
	}
	p.contacts-txt-titles {
		font-size: 1.6rem;
		letter-spacing: 0px;
		padding: 0 0 40px;
		text-align: left;
	}
	.item-contacts-l a {
		font-size: 3.6rem;
	}
	.item-contacts-l {
		font-size: 3.6rem;
		padding: 0 0 10px;
		text-align: center;
	}
	.item-contacts-l i {
		font-size: 3.6rem;
	}
	.item-contacts-l-teltime {
		font-size: 1.3rem;
		padding: 0 0 30px;
	}
	.item-contacts-r {
		font-size: 2.4rem;
		padding: 0 0 20px;
		text-align: center;
	}
	p.contacts-txt-title br {
		display: none;
	}
	p.contacts-txt-title-name {
		font-size: 1.6rem;
	}
	p.contacts-txt-title-address {
		font-size: 1.6rem;
		line-height: 1.4;
	}
	p.contacts-txt-title {
		font-size: 1.6rem;
		letter-spacing: 0px;
		line-height: 1.6;
		padding: 30px 0;
		text-align: left;
	}
	p.contacts-txt-title br {
		display: none;
	}
	p.contacts-txt-titles {
		font-size: 1.5rem;
		letter-spacing: 0;
		line-height: 1.6;
		padding: 0 0 20px;
		text-align: left;
	}
	p.contacts-txt-titles br {
		display: none;
	}
	p.contacts-address {
		font-size: 1.4rem;
		letter-spacing: 0px;
	}
	p.contacts-address span {
		font-size: 15px;
		padding: 0 0 10px 0;
	}
	dl.item-contacts {
		width: 100%;
		padding: 30px 0;
	}
	dl.item-contacts dd {
		font-size: 2.4rem;
	}
}
@media (max-width: 350px){
	dl.item-contacts dt {
		width: 40px;
		font-size: 2.4rem;
	}
	dl.item-contacts dd {
		margin-left: 40px;
		font-size: 2.4rem;
	}
	p.contacts-address {
		font-size: 1.2rem;
	}
}



/* --------------------------------------
	section-contact
----------------------------------------*/
.contact-inner {
	width: 90%;
	font-size: 1.8rem;
    color: #121212;
	line-height: 2.0;
	text-align: left;
	margin: 0 auto;
	padding: 100px 0 0;
}
/* txt */
.tell {
	font-size: 1.6rem;
	line-height: 1.5;
	margin-bottom: 50px;
}
.tell span.num {
	font-size: 4.8rem;
	font-weight: 600;
}
.tell span.time {
	font-size: 1.6rem;
}
.contact-txt001 {
	font-size: 1.8rem;
    font-weight: 400;
	margin-bottom: 10px;
}
.contact-txt001 br {
	display: none;
}
.contact-txt01 {
	margin-bottom: 2em;
}
.contact-txt02 {
	font-size: 1.5rem;
    font-weight: 400;
	margin-bottom: 2em;
}
.contact-txt02 span {
	font-size: 1.8rem;
	display: block;
	margin-bottom: 1em;
}
.contact-txt03 {
	font-size: 1.6rem;
	font-weight: 400;
	margin-bottom: 1.5em;
}
em {
	color: #a40000;
	font-style: normal;
}
em02 {
	font-size: 1.2rem;
	font-weight: 400;
	color: #212121;
	font-style: normal;
}

@media (max-width: 990px){
	.contact-txt001 {
		font-size: 1.6rem;
		margin-bottom: 10px;
	}
}

.contatcts-to-faq	{margin-top: 20px;text-align: center}
.contatcts-to-faq	a{display: block;max-width: 500px;margin: 0 auto;padding: 10px;text-align: center;color: #fff;background:rgba(0, 110, 137, 0.9)}
.contatcts-to-faq	a:hover{background: #333}

/* --------------------------------------
	itemBlock
----------------------------------------*/
.itemBlock {
	margin-bottom: 30px;
	line-height: 1;
	font-size: 1.6rem;
}
.itemBlock .title {
	margin-bottom: 20px;
	font-size: 2.0rem;
	font-weight: 600;
}
.itemBlock p {
    margin-bottom: 15px;
	font-size: 1.6rem;
    font-weight: 600;
}
.itemBlock label {
	cursor: pointer;
	display: block;
}
.itemBlock label:after {
	content: "";
	clear: both;
	display: block;
}
	.itemBlock label input { 
		float: left;
		font-size: 1.8rem;
	}
	.itemBlock label input[type="radio"] {
		width: 18px;
		height: 18px;
		margin: 0 0 0 0;
	}
	.itemBlock label p {
		float: left;
		padding: 0 0 0 4px;
		margin: 0;
		width: calc(100% - 24px);
		font-size: 1.8rem;
		font-weight: 400;
		line-height: 1.2;
	}

/* --------------------------------------
	contentsBlock
----------------------------------------*/
.contentsBlock {
	line-height: 1.5;
	margin-bottom: 30px;
}
.contentsBlock .title {
	margin-bottom: 20px;
	font-size: 2.0rem;
	font-weight: 600;
}
.contentsBlock .title span {
	font-size: 1.8rem;
}

/* --------------------------------------
	addressBlock
----------------------------------------*/
.addressBlock {
	line-height: 1.5;
	font-size: 1.6rem;
}
.addressBlock .title {
	margin-bottom: 30px;
	font-size: 2.0rem;
	font-weight: 600;
}
.addressBlock p {
	margin-bottom: 15px;
	font-size: 1.8rem;
	font-weight: 600;
}
.addressBlock p span {
	font-size: 1.4rem;
	font-weight: 400;
}
.addressBlock input {
	margin-bottom: 30px;
}

@media (max-width: 1200px){
	.addressBlock p {
		font-size: 1.6rem;
	}
}

/* --------------------------------------
	privacyBlock
----------------------------------------*/
.privacyBlock {
	line-height: 2;
	font-size: 1.6rem;
	margin-bottom: 60px;
}
.privacyBlock .title {
	font-size: 1.8rem;
	font-weight: 600;
	margin-bottom: 15px;
}
.privacyBlock label {
	cursor: pointer;
	display: block;
}
.privacyBlock label:after {
	content: "";
	clear: both;
	display: block;
}
	.privacyBlock label input { 
		float: left;
		font-size: 1.6rem;
	}
	.privacyBlock label input[type="checkbox"] {
		width: 18px;
		height: 18px;
		margin: 0 0 0 0;
	}
	.privacyBlock p {
		font-size: 1.8rem;
		font-weight: 400;
		line-height: 1.6;
	}
	.privacyBlock label p {
		float: left;
		padding: 0 0 0 4px;
		margin: 0;
		width: calc(100% - 24px);
		font-size: 1.8rem;
		line-height: 1.2;
	}
.privacyBlock a {
	text-decoration: underline;
	font-size: 1.8rem;
	font-weight: 400;
	color: #5C5E5D;
}
.privacyBlock a:hover {
	text-decoration: none;
}

@media (max-width: 1200px){
}

/* --------------------------------------
	form
----------------------------------------*/
.form-control-w20p {
	display: inline-block;
    width: 10em;
    height: 34px;
    padding: 6px 12px;
    font-size: 1.4rem;
    line-height: 1.42857143;
    color: #003366;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
}
.form-control-w20p:focus {
    border-color: #66afe9;
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102,175,233,.6);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102,175,233,.6);
}
.addressBlock input[type="text"] {
	font-size: 1.6rem;
	font-weight: 400;
	padding-right: 6px;
	padding-left: 6px;
	margin-right: 10px;
	color: #000;
	display: inline-block;
	border-color: #333;
}
.contentsBlock textarea {
	font-size: 1.6rem;
	font-weight: 400;
	padding-right: 6px;
	padding-left: 6px;
	margin-right: 10px;
	color: #000;
	display: inline-block;
	height: 8em;
	border-color: #333;
}
.itemBlock select {
	height: 38px;
	font-size: 1.6rem;
	font-weight: 600;
	padding: 6px 6px 10px 6px;
	margin-right: 10px;
	color: #000;
	display: inline-block;
	border-color: #333;
}
.itemBlock label {
	font-weight: normal;
    color: #121212;
    font-size: 1.5rem;
    margin: 0;
    padding: 0;
}
.itemBlock label input[type="checkbox"] {
	width: 18px;
	height: 18px;
	margin: 0 0 0 0;
}

@media (max-width: 1200px){
}

/* --------------------------------------
	Left Side  dl.contact-use-w
----------------------------------------*/
dl.contact-use-w {
    width: 100%;
    padding: 0;
    margin: 0;
}
	dl.contact-use-w dt {
		float: left;
		width: 20px;
		font-size: 1.8rem;
		color: #000;
		text-align: left;
		line-height: 1.2;
		padding: 0 0 10px 0;
		margin: 0;
	}
	dl.contact-use-w dd {
		margin-left: 24px;
		font-size: 1.8rem;
		font-weight: 600;
		color: #000;
		text-align: left;
		line-height: 1.2;
		padding: 0 0 10px 0;
	}

/* --------------------------------------
	Left Side  tel
----------------------------------------*/
.tell p.num {
	font-size: 6.0rem;
	font-weight: 600;
    padding: 0;
	margin: 0;
}
.tell p.time {
	font-size: 1.6rem;
	font-weight: 400;
    padding: 0;
	margin: 0;
}
.tell p.tel-txt {
	font-size: 1.6rem;
	font-weight: 400;
    padding: 10px 0 20px 0;
	margin: 0;
}
a.telcall {
	display: none;
}

/* --------------------------------------
	confirmBlock
----------------------------------------*/
.confirmBlock {
	text-align: center;
	line-height: 1;
}
.confirmBlock ul.submit{
	width: 100%;
	font-size: 0;
	margin: 0;
	padding-top: 0;
	padding-bottom: 0;
	-webkit-padding-start: 0px;
}
.confirmBlock ul.submit li{
	width: 100%;
	font-size: 1.8rem;
	display: inline-block;
}
.confirmBlock ul.submit li button.reset{
	background-color: #c9c9c9;
	color: #434343;
	border: none;
	text-decoration: none;
	padding: 15px 40px;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
}
.confirmBlock ul.submit li button.reset:hover{
	background-color: #000;
	color: #FFF;
	cursor: pointer;
}
.confirmBlock ul.submit li button.confirm{
    display: inline-block;
    position: relative;
	border-radius: 2px;
	border: none;
    color: #f1f1f1;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 4px;
	margin: 0 auto;
    padding: 30px 80px;
	background: #AC0032;
    text-transform: uppercase;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
}
.confirmBlock ul.submit li button.confirm:hover{
	background-color: #6F0601;
	color: #FFF;
	border: none;
	cursor: pointer;
}
@media(max-width:1480px) {
	.itemBlock .title {
		font-size: 2.0rem;
	}
	.contentsBlock .title {
		font-size: 2.0rem;
	}
	.addressBlock .title {
		font-size: 2.0rem;
	}
}
@media(max-width:1300px) {
	.headline-inline .headline-contact01 {
		font-size: 1.6rem;
	}
	.headline-inline .headline-contact02 {
		font-size: 1.6rem;
	}
	.itemBlock .title {
		font-size: 1.6rem;
	}
	.contentsBlock .title {
		font-size: 1.6rem;
	}
	.contentsBlock .title span {
		font-size: 1.6rem;
	}
	.addressBlock .title {
		font-size: 1.6rem;
	}
	.privacyBlock .title {
		font-size: 1.6rem;
	}
}
@media(	max-width:1200px) {
	.contact-inner {
		width: 100%;
		padding: 5% 0 0;
	}
	.tell p.num {
		font-size: 4.9rem;
	}
	.tell p.time {
		font-size: 1.4rem;
	}
	.tell p.tel-txt {
		font-size: 1.4rem;
	}
	.contact-txt02 {
		font-size: 1.4rem;
	}
}
@media(max-width:990px) {
	.contact-inner {
		font-size: 1.4rem;
		padding: 5% 0 0;
	}
	.headline-inline .headline-contact01 {
		font-size: 2.0rem;
		text-align: center;
	}
	.headline-inline .headline-contact02 {
		font-size: 2.0rem;
		text-align: center;
	}
	.tell {
		margin-bottom: 2em;
	}
	.tell span.num {
		font-size: 3.2rem;
	}
	.tell span.time {
		font-size: 1.4rem;
	}
	.contact-txt01 {
		margin-bottom: 1em;
	}
	.contact-txt02 {
		font-size: 1.4rem;
	}
	.contact-txt02 span {
		font-size: 16px;
		margin-bottom: 0.5em;
	}
	.itemBlock .title {
		font-size: 1.6rem;
		margin-bottom: 10px;
	}
	.contentsBlock {
		font-size: 1.6rem;
	}
	.contentsBlock .title span {
		font-size: 1.3rem;
	}
	.privacyBlock {
		margin-bottom: 20px;
	}
	.addressBlock .title {
		font-size: 1.6rem;
	}
	.privacyBlock .title {
		font-size: 1.6rem;
	}
	.privacyBlock {
		line-height: 1.2;
		font-size: 1.4rem;
	}
	.privacyBlock label {
		font-size: 1.6rem;
		margin-top: 10px;
	}
	.contact-inner .tell p.num {
		font-size: 3.6rem;
	}
	.confirmBlock ul.submit {
		margin-top: 50px;
		padding-bottom: 2%;
	}
}
@media(max-width:740px) {
	.headline-inline .headline-contact01 {
		font-size: 1.7rem;
		text-align: left;
	}
	.headline-inline .headline-contact02 {
		font-size: 1.7rem;
		text-align: left;
	}
	.addressBlock {
		margin-bottom: 15px;
	}
	.addressBlock p {
		margin-bottom: 5px;
	}
	.addressBlock input {
		margin-bottom: 15px;
	}
	.addressBlock .title {
		margin-bottom: 20px;
	}
	.addressBlock span {
		font-size: 1.2rem;
	}
	.contentsBlock .title {
		font-size: 1.6rem;
	}
	.privacyBlock .title {
		margin-bottom: 15px;
	}
}
@media(max-width:680px) { /* SP */
	a.telcall {
		display: block;
	}
}
@media(max-width:499px) {  /* SP */	
	.contact-inner {
		padding: 5% 0 0;
	}
	.contact-txt001 {
		font-size: 1.4rem;
		line-height: 1.4;
		margin-t0px;
		margin-bottom: 10px;
	}
	.contact-txt001 br {
		display: block;
	}
	#staff.bussiness-about-company {
		padding-top: 80px;
		margin-top: -80px;
	}
	.headline-inline .headline-contact01 {
		font-size: 1.5rem;
		padding: 10px 50px 10px 0;
	}
	.headline-inline .headline-contact02 {
		font-size: 1.5rem;
	}
	.itemBlock {
		font-size: 1.4rem;
	}
	
	.itemBlock p {
		font-size: 1.5rem;
	}
	.itemBlock .title {
		font-size: 1.5rem;
		line-height: 1.2;
		margin-bottom: 20px;
	}
	.itemBlock select {
		font-size: 1.3rem !important;
	}
	.contentsBlock {
		font-size: 1.5rem;
	}
	.contentsBlock .title {
		font-size: 1.5rem;
	}
	.contentsBlock .title span {
		font-size: 1.5rem;
	}
	.addressBlock .title {
		font-size: 1.5rem;
	}
	.addressBlock span.age {
		display: block;
		font-size: 1.2rem;
	}
	.privacyBlock {
		margin-bottom: 50px;
	}
	.privacyBlock .title {
		font-size: 1.5rem;
	}
	.addressBlock p {
		font-size: 1.5rem;
	}
	.itemBlock label p {
		font-size: 1.5rem;
	}
	.privacyBlock p {
		font-size: 1.5rem;
	}
	.privacyBlock label p {
		font-size: 1.5rem;
	}
	.tell p.time {
		font-size: 1.2rem;
	}
	.tell p.tel-txt {
		font-size: 1.2rem;
	}
	.contact-txt02 {
		font-size: 1.2rem;
	}
	.form-control-w20p {
		width: 6em;
		margin-right: 0px !important;
	}
}
@media(max-width:360px) {
	.headline-inline .headline-contact01 {
		font-size: 1.5rem;
		padding: 10px 60px 10px 0;
	}
	.contact-inner .tell p.num {
		font-size: 3.0rem;
	}
	.tell p.time {
		font-size: 1.2rem;
	}
	.tell p.tel-txt {
		font-size: 1.2rem;
	}
	.contact-txt02 {
		font-size: 1.2rem;
	}
	.contents01 .titleBlock p.read {
		font-size: 1.6rem;
	}
	.business-service-2x h5 {
		margin: 0 0 10px;
	}
	.business-service-2x p {
		font-size: 1.0rem;
	}
	.contents02 .titleBlock02 p.read {
		font-size: 1.6rem;
	}
	.about-company-left h2.about-copy {
		font-size: 1.6rem;
	}
	.about-company-left h2.recruit-copy {
		font-size: 1.8rem;
	}
}

/*!------------------------------------------------------------------
[Contact Us ]  confirm.html  確認画面
*/
.contact-inner .conbox-head {
	width: 100%;
	margin: 20px auto 80px;
	text-align: center;
}
.contact-inner .conbox-head p {
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.8;
	color: #212121;
	text-align: center;
	margin: 0;
}
@media (max-width: 1200px) {
	.contact-inner .conbox-head {
		width: 100%;
	}
	.contact-inner .conbox-head p {
		font-size: 1.4rem;
	}
}
@media (max-width: 499px){
	.contact-inner .conbox-head p {
		font-size: 1.5rem;
		text-align: left;
	}
	.contact-inner .conbox-head p br {
		display: none;
	}
}

.contact-inner .conbox01 {
	width: 100%;
	margin: 0 auto;
	font-size: 1.8rem;
}

/* --------------------------------------
	conbox01 table
----------------------------------------*/
.contact-inner .conbox01 table {
	width: 100%;
	font-size: 18px;
	border-collapse: collapse;
	margin-bottom: 50px;
}
.contact-inner .conbox01 table th {
	width: 35%;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #CCC;
	font-size: 1.6rem;
	font-weight: bold;
	vertical-align: top;
	padding-top: 15px;
	padding-bottom: 15px;
	text-align: left;
	color: #000;
}
.contact-inner .conbox01 table th.pt20 {
	padding-top: 20px;
}
.contact-inner .conbox01 table th span {
	margin-left: 25px;
}
.contact-inner .conbox01 table th span.ml0 {
	margin-left: 0px;
}
.contact-inner .conbox01 table th span span{
	margin-left: 0px;
}
.contact-inner .conbox01 table td {
	width: 60%;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #CCC;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.5;
	vertical-align: top;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-left: 30px;
	text-align: left;
	color: #000;
}
.contact-inner .conbox01 table th.conend,
.contact-inner .conbox01 table td.conend {
	padding-top: 50px;
	border-bottom-style: none;
	border-top-style: none;
	border-right-style: none;
	border-left-style: none;
}
.contact-inner .conbox01 table td span {
	font-size: 1.4rem;
}
.contact-inner .conbox01 table td.pt20 {
	padding-top: 20px;
}
.contact-inner .conbox01 table td.pb20 {
	padding-bottom: 20px;
}
.contact-inner .conbox01 table td.pt30 {
	padding-top: 30px;
}
.contact-inner .conbox01 table td.pt35 {
	padding-top: 35px;
}
.contact-inner .conbox01 table td.pt45 {
	padding-top: 45px;
}

/* --------------------------------------
	conbox01 table  submit
----------------------------------------*/
.contact-inner .conbox01 table th ul.submit{
	width: 30%;
	font-size: 0;
	display: block;
	list-style-type: none;
    -webkit-margin-before: 0em;
    -webkit-margin-after: 0em;
    -webkit-margin-start: 0px;
    -webkit-margin-end: 0px;
    -webkit-padding-start: 0px;
	margin: 60px auto 0;
}
.contact-inner .conbox01 table th ul.submit li{
	width: 100%;
	display: inline-block;
	margin-bottom: 20px;
}
.contact-inner .conbox01 table th ul.submit li button.reset{
	display: block;
	width: 100%;
	text-decoration: none;
	padding: 25px;
	font-size: 1.8rem;
	background-color: #CCC;
	color: #212121;
    border: 0px outset buttonface;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
     -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    transition: all .3s ease;
}
.contact-inner .conbox01 table th ul.submit li button.reset:hover{
	background-color: #999;
	color: #000;
	cursor: pointer;
}
.contact-inner .conbox01 table th ul.submit li button.confirm{
	display: block;
	width: 100%;
	text-decoration: none;
	padding: 25px;
	font-size: 1.8rem;
	background-color: #009FD5;
	color: #FFF;
    border: 0px outset buttonface;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
     -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    transition: all .3s ease;
}
.contact-inner .conbox01 table th ul.submit li button.confirm:hover{
	background-color: #D71D3B;
	color: #FFF;
	cursor: pointer;
}

@media (max-width: 1200px) { /* SP */
	.contact-inner .conbox01 {
		width: 90%;
		margin: 0 auto;
	}
	.contact-inner .conbox01 table th {
		display: block;
		width: 100%;
		padding-bottom: 5px;
		font-size: 1.4rem;
	}
	.contact-inner .conbox01 table td {
		display: block;
		width: 100%;
		border-top: none;
		padding-top: 5px;
		padding-bottom: 15px;
		font-size: 1.4rem;
		padding-left: 0px;
		margin-bottom: 15px;
	}
	.contact-inner .conbox01 table th ul.submit{
		-webkit-padding-start: 0px;
	}
	.contact-inner .conbox01 table th ul.submit li{
		display: block;
		width: 100%;
		margin-right: 0px;
		margin-top: 20px;
	}
	.contact-inner .conbox01 table th ul.submit li button.reset {
		width: 100%;
	}
	.contact-inner .conbox01 table th ul.submit li button.confirm {
		width: 100%;
	}
}
@media (max-width: 990px) { /* SP */
	.contact-inner .conbox01 table th ul.submit{
		width: 50%;
	}
}
@media (max-width: 499px) { /* SP */
	.contact-inner .conbox01 table th ul.submit{
		width: 100%;
		margin: 30px auto 0;
	}
}

/*!------------------------------------------------------------------
[Privacy Policy ]
*/

.privacy-inner {
    margin: 0;
    padding: 0;
    text-align: left;
}
.privacy-title {
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 1px;
    color: #121212;
    margin: 0;
    padding: 50px 0 50px;
}
.privacy-subtitle {
    font-size: 2.0rem;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 1px;
    color: #121212;
    margin: 0;
    padding: 0 0 20px;
}
.privacy-title-right {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 1px;
    color: #121212;
	text-align: right;
    margin: 0;
    padding: 0;
}
.privacy-txt {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 1px;
    color: #121212;
    margin: 0;
    padding: 0 0 50px;
}
.privacy-txt02 {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 1px;
    color: #121212;
    margin: 0;
    padding: 0 0 20px;
}
.privacy-txt-last {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 1px;
    color: #121212;
    margin: 0;
    padding: 0 0 50px;
}

dl.item-privacy-lines {
    width: 100%;
    padding: 0 0 0 20px;
    margin: 0 0 50px;
}
dl.item-privacy-lines dt {
    float: left;
    width: 30px;
    font-size: 1.6rem;
    color: #000;
    text-align: left;
    line-height: 1.4;
    padding: 4px 0;
    margin: 0;
}
dl.item-privacy-lines dd {
    margin-left: 30px;
    font-size: 1.6rem;
    font-weight: 400;
    text-align: left;
    line-height: 1.4;
    letter-spacing: 1px;
    padding: 4px 0;
}

@media(max-width:1480px) {
	.privacy-title {
		font-size: 1.6rem;
		line-height: 1.8;
		letter-spacing: 1px;
		padding: 40px 0 40px;
	}
	.privacy-subtitle {
		font-size: 1.8rem;
	}
	.privacy-txt {
		font-size: 1.6rem;
	}
}
@media (max-width: 1300px){
	.privacy-inner {
		padding: 0 15px;
	}
}
@media (max-width: 1200px){
	.privacy-title {
		padding: 60px 0 40px;
	}
}
@media (max-width: 990px){
	.privacy-hero-bg {
		background-size: cover;
		background-image: url(../img/privacy-top-bgsp.jpg);
	}
	.privacy-title {
		padding: 40px 0 40px;
	}
	.privacy-subtitle {
		font-size: 1.5rem;
	}
}
@media (max-width: 749px){
	.privacy-title01-main {
		width: 260px;
		font-size: 2.0rem;
		letter-spacing: 2px;
		padding: 10px 0;
	}
}
@media (max-width: 499px){
	.contact-01-wrap {
		width: 84%;
	}
	.privacy-title {
		font-size: 1.5rem;
		letter-spacing: 0px;
	}
	.privacy-subtitle {
		font-size: 1.6rem;
		letter-spacing: 0px;
	}
	.privacy-txt {
		font-size: 1.5rem;
		letter-spacing: 0px;
	}
}


/*FAQ*/
/*全体*/
.faq_list   {}
.faq_list  dt,.faq_list  dd {display:-webkit-box;display:-ms-flexbox;display:flex;}
.faq_list  dt	span:first-child,.faq_list  dd	span:first-child {-ms-flex-preferred-size: 30px;flex-basis:30px;}
.faq_list  dt	span:last-child,.faq_list  dd	span:last-child {-ms-flex-preferred-size: calc(100% - 30px);flex-basis:calc(100% - 30px);}

.faq_list  dt {padding: 10px 20px;background: #43A4C7;color: #fff;}
.faq_list  dd {margin-bottom: 30px;padding: 20px;background: rgba(0,0,0,0.05)}

.faq_list  dt	span:first-child,.faq_list  dd	span:first-child {font-size: 2rem;}
.faq_list  dt	span:last-child,.faq_list  dd	span:last-child {padding-top: 5px;}



/*--------------------------------------
　HOME トップページキャッチ 20221024
--------------------------------------*/
.home-subtitle {margin: 0;padding: 0 0 2%;display: block;font-size: 2.7vw;font-weight: 700;letter-spacing: 1px;line-height: 1.3;color: #F5F5F5;text-shadow: 2px 2px 3px #000000;}
.home-subtitle br.br {display: none;}

@media (max-width: 990px){
.home-subtitle {padding: 0;font-size: 2.0rem;letter-spacing: 1px;}
}

@media (max-width: 749px){
.home-subtitle {font-size: 1.8rem;letter-spacing: 0;}
}

@media (max-width: 499px){
.home-subtitle br.br {display: block;}
}
	
.home-title {display: block;margin: 0;padding: 0 0 8%;font-size: 6.0vw;font-weight: 700;font-family: 'Noto Serif JP', serif;line-height: 1.2;color: #F5F5F5;text-shadow: 3px 3px 5px #000000;}
.home-title span {display: block;margin: 0;padding: 0;}

@media (max-width: 990px){	
.home-title {padding: 0 0 4%;font-size: 7.2rem;letter-spacing: 4px;}
}

@media (max-width: 749px){
.home-title {padding: 0 0 4%;font-size: 4.5rem;letter-spacing: 1px;}
}


.catch-55	{padding: 40px 0 20px 0;background: rgba(255,255,255, 1.0);font-size: 2.6rem;font-weight: 700;text-align: center}
.catch-55	p{display: inline-block;margin: 0 auto;padding: 0 5%;text-align: left;}
.catch-55	p	span{padding: 0 5px;background: #d7e4fa;}
@media (max-width: 749px){
.catch-55	{padding: 30px 0;background: rgba(255,255,255, 0.7);font-size: 2rem;}
}

/* Showcase Page */

/* コンテンツを包む全体の設定 */
.showcase-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1230px;
    padding: 20px 40px 24px 40px;   /* 左右40pxのパディング */
	margin: 0 auto;
    box-sizing: border-box;
	gap: 40px;
}

.showcase-item {
    width: 30%;
    margin-bottom: 20px;
    box-sizing: border-box;
}

.showcase-item a {
    color: black; /* デフォルトで黒色に設定 */
    text-decoration: none; /* 必要に応じて下線も除去 */
}

.showcase-item a:hover {
    color: black; /* ホバー時も黒色に設定 */
    text-decoration: none; /* ホバー時に下線が付かないように */
}


.showcase-image {
    width: 100%;
    height: 200px; /* 画像の固定高さ */
    overflow: hidden; /* 画像が枠を超えた場合に隠す */
}

.showcase-image img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* 画像を枠にフィットさせる */
}

.showcase-tags {
    margin-top: 10px;
}

.showcase-tags .tag {
    display: inline-block;
    background-color: #EDF6F8;
	border: solid 2px #43A4C7;
	color: #1C799A;
    padding: 5px;
    margin-right: 5px;
    border-radius: 3px;
	font-size: 1.4rem;
}

.showcase-title h2 {
    font-size: 1.2em;
	font-family: 'Noto Serif JP', serif;
    margin-top: 10px;
	text-decoration: none;
}

@media (max-width: 768px) {
	.showcase-item {
		width: 100%;
	}
}


/* フィルターボタンのスタイル */
.filter-buttons {
    text-align: left;
    padding: 70px 40px 0 40px;
    margin: 0 auto;
    max-width: 1230px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.filter-buttons-text {
    font-size: 1.8rem;
    margin-right: 12px;
}

.filter-button {
    display: inline-block;
    padding: 4px 12px;
    background-color: #EDF6F8;
    border: solid 2px #43A4C7;
    color: #1C799A;
    cursor: pointer;
    margin-right: 12px;
    margin-bottom: 10px;
    border-radius: 4px;
    font-size: 18px;
}

.filter-button.active {
    background-color: #1C799A;
    color: #fff;
}

.filter-button:hover {
    background-color: #1C799A;
    color: #fff;
}

.showcase-pagination {
    text-align: center;
    margin: 70px 0 140px 0;
}

.showcase-pagination a {
    display: inline-block;
    padding: 10px 17px;
    margin: 0 5px;
    background-color: none;
	border: solid 1px #C3C3C9;
    color: #212529;
    text-decoration: none;
	border-radius: 4px;
}

.showcase-pagination a:hover {
    background-color: #43A4C7;
	border: solid 1px #43A4C7;
	color: #fff;
}

.showcase-pagination .current {
    display: inline-block;
    padding: 10px 17px;
    margin: 0 5px;
    background-color: #43A4C7;
    color: white;
    font-weight: bold;
	border: solid 1px #43A4C7;
	border-radius: 4px;
}

/* モバイル対応（幅768px以下） */
@media (max-width: 768px) {
    .filter-buttons {
        flex-direction: column; /* ボタンを縦に並べる */
        align-items: flex-start; /* 左揃え */
		padding: 36px 40px 0 40px;
    }

    .filter-button {
        width: 100%;  /* ボタンを幅いっぱいに広げる */
        text-align: center;
		font-size: 1.5rem;
    }

	.showcase-item {
		margin-bottom: 0;
	}

	.showcase-pagination {
		margin: 40px 0 80px 0;
	}

	.showcase-container {
		padding: 20px 40px 0 40px;
	}
}

/* スマートフォン対応（幅600px以下） */
@media (max-width: 600px) {
    .filter-buttons {
        flex-direction: row; /* ボタンを横並びに戻す */
        justify-content: space-between; /* 均等に配置 */
    }

    .filter-buttons-text {
        width: 100%;
        text-align: left;
        margin-bottom: 10px; /* テキストとボタンの間に余白を追加 */
    }

    .filter-button {
        width: auto;
        flex-grow: 1; /* ボタンを均等に広げる */
        margin-right: 5px;
    }
}


.single-showcase-detail-container {
    max-width: 1230px;
    padding: 80px 40px 120px 40px;
    margin: 0 auto; /* 中央揃え */
}

.single-showcase-tags {
    margin-bottom: 20px;
}

.single-tag {
	display: inline-block;
    padding: 4px 12px;
    background-color: #EDF6F8;
    border: solid 2px #43A4C7;
    color: #1C799A;
    cursor: pointer;
    margin-right: 12px;
    border-radius: 4px;
    font-size: 18px;
}

.single-showcase-title {
    font-size: 32px;
    margin-bottom: 40px; /* 下に40pxの余白を追加 */
    position: relative;
    padding-bottom: 40px; /* 下線と商品名の間に少し余白を追加 */
}

.single-showcase-title::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%; /* 下線の横幅を100%に設定 */
    height: 1px;
    background-color: #000; /* 黒色の下線 */
}

.single-showcase-image {
    width: 60%; /* 幅を60%に設定 */
    margin: 0 auto; /* 画像を中央揃え */
    position: relative;
    padding-bottom: 56.25%; /* 16:9のアスペクト比 */
    overflow: hidden;
}

.single-showcase-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* アスペクト比を保ちながら画像を収める */
}

.single-showcase-description {
    margin-top: 48px;
    font-size: 16px;
    line-height: 1.6;
}

.single-showcase-navigation {
    display: flex;
    justify-content: space-between;
    margin-top: 80px;
    gap: 10px; /* ボタン間に余白を追加 */
}

.single-showcase-navigation button {
    padding: 10px 20px;
    background-color: #0073aa;
    color: white;
    border: none;
    border-radius: 3px;
    cursor: pointer;
    text-align: center;
    width: auto; /* デフォルトではボタンは自動幅 */
}

.single-nav-button {
    flex: 1;
    text-align: center;
    width: 30%; /* 親要素の30%の幅 */
}

.single-nav-button a {
    display: inline-block;
    width: 100%; /* ボタンの幅を親要素に合わせる */
    padding: 2rem 0; /* ボタンの高さを他のボタンと合わせる */
    border: solid 2px #000;
    color: #000;
	font-size: 1.4rem;
	font-weight: 600;
    text-decoration: none;
    border-radius: 6px;
}

.single-nav-button a:hover {
    background-color: #43A4C7;
	border: solid 2px #43A4C7;
	color: #fff;
}

@media(max-width: 768px) {
	.single-showcase-detail-container {
		padding: 32px 40px 80px 40px;
	}

	.single-showcase-image {
		width: 100%;
	}

	.single-showcase-description {
		margin-top: 40px;
	}

	.single-showcase-navigation {
        flex-direction: column; /* ボタンを縦並びに */
        align-items: stretch; /* 横幅を100%にする */
    }

    .single-showcase-navigation button {
        width: 100%; /* ボタンを横幅100%に */
        margin-bottom: 10px; /* ボタン間にスペースを追加 */
		border-radius: 3px; /* ボタンの角を3pxに設定 */
    }

    .single-showcase-navigation button:last-child {
        margin-bottom: 0; /* 最後のボタンには余白を付けない */
    }

	.single-nav-button {
		width: 100%;
	}

	.single-nav-button a {
		padding: 1rem 0;
	}
}


/* 採用情報 */
.recruit-container {
    /* max-width: 1230px; */
    margin: 0 auto;
    padding: 40px 0;
}

/* ヒーローセクション */
.recruit-hero {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
	padding-top: 40px;
}

.recruit-hero-text {
    flex: 1;
	padding: 40px;
	margin-left: auto;
	font-family: 'Noto Serif JP', serif;
}

.recruit-hero-text h1 {
    font-size: 40px; /* 見出しのフォントサイズを40pxに */
    line-height: 1.2;
	margin-bottom: 40px;
	text-align: left;
}

.recruit-hero-text p {
	line-height: 1.75;
	text-align: left;
}

.recruit-hero-image {
    flex: 1;
    text-align: right;
}

.recruit-hero-image img {
    width: 100%; /* 画像の幅を50%に設定 */
    height: auto; /* 高さは自動で調整 */
    aspect-ratio: 3/4;
    object-fit: cover; /* 画像を枠内にフィットさせる */
}

@media (max-width: 768px) {
    .recruit-hero {
        flex-direction: column;
        text-align: center;
    }

    .recruit-hero img {
        width: 100%;
    }

    .recruit-hero-text {
        width: 100%;
        padding: 20px;
    }
}

/* recruit-waiting-forの全体スタイル */
.recruit-waiting-for {
    padding: 40px 0;
    text-align: center;
	font-family: 'Noto Serif JP', serif;
}

.recruit-subtitle {
    font-size: 1.6rem;
    color: #555;
	font-weight: 400;
	font-family: 'Oswald', sans-serif;
}

.recruit-title {
    font-size: 2.4rem;
    margin-top: 10px;
    margin-bottom: 30px;
}

.recruit-underline {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 10px; /* 見出しと線の間に少し余白 */
}

.recruit-underline::before,
.recruit-underline::after {
    content: "";
    width: 40px;
    height: 4px;
}

.recruit-underline::before {
    background-color: #43A4C7; /* ブルー */
}

.recruit-underline::after {
    background-color: #AAB6C1; /* グレー */
    margin-left: 0; /* 間の余白を無くす */
}

.recruit-appeal {
    margin-top: 40px;
}

/* recruit-appeal-itemのレイアウト */
.recruit-appeal-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 40px;
    gap: 40px;
}

.recruit-appeal-text {
    width: 50%;
    padding: 0 20px;
    text-align: left;
}

.recruit-appeal-title {
    font-size: 2.2rem;
    margin-bottom: 30px;
	color: #1C799A;
}

.recruit-appeal-underline {
    width: 100%;
    height: 1px;
    background-color: #43A4C7;
    margin-bottom: 14px;
}

.recruit-appeal-text p {
    font-size: 16px;
    line-height: 1.75;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
}

.recruit-appeal-image {
    width: 50%;
    margin: 0;
}

.recruit-appeal-image img {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
    object-fit: cover;
    margin: 0; /* 余白をなくす */
    padding: 0; /* 余白をなくす */
}

/* 2つ目のコンテンツを反転 */
.recruit-appeal-item:nth-child(2) {
    flex-direction: row-reverse;
}

/* レスポンシブ対応 (768px以下) */
@media (max-width: 768px) {
	.recruit-hero-text h1 {
		font-size: 3rem;
	}
    /* recruit-appeal-itemの全体を縦並びにする */
    .recruit-appeal-item {
        flex-direction: column;
    }

    /* 2つ目のコンテンツも縦並びにする */
    .recruit-appeal-item:nth-child(2) {
        flex-direction: column;
    }

    /* recruit-appeal-textと画像の幅を100%に */
    .recruit-appeal-text {
		order: 1;
        width: 100%;
        padding: 20px 4%;
        text-align: left;
    }

    .recruit-appeal-image {
		order: 2;
        width: 100%;
        margin-bottom: 20px;
    }

	.recruit-appeal-item {
		gap: 0;
		margin-bottom: 24px;
	}

	.recruit-waiting-for {
		padding-bottom: 0;
	}
}

/* 魅力セクション */
.recruit-strengths {
    margin: 0 auto;
    padding: 40px 4%;
	font-family: 'Noto Serif JP', serif;
}

.recruit-strength-subtitle {
    font-size: 1.6rem;
	font-weight: 400;
    text-align: center;
    display: block;
    margin-bottom: 10px;
	font-family: 'Oswald', sans-serif;
}

.recruit-strength-title {
    font-size: 2.4rem;
    text-align: center;
    margin-bottom: 30px;
}

.recruit-strength-underline {
    text-align: center;
    margin: 0 auto;
	padding-bottom: 50px;
}

.recruit-strength-underline::before, 
.recruit-strength-underline::after {
    content: "";
    display: inline-block;
    width: 40px;
    height: 4px;
    vertical-align: middle;
}

.recruit-strength-underline::before {
    background-color: #43A4C7; /* 左側のブルー */
    margin-right: 0;
}

.recruit-strength-underline::after {
    background-color: #AAB6C1; /* 右側のグレー */
    margin-left: 0;
}

.recruit-strength-item {
    display: flex;
    align-items: center;
    margin: 0 auto;
	margin-bottom: 10px;
	width: 100%;
	background-color: #EDF6F8;
}

.recruit-strength-image {
	width: 40%;
}

.recruit-strength-image img {
    width: 100%;
    padding: 40px;
    max-width: none; /* 余白なし */
}

.recruit-strength-text {
    flex: 1;
    padding: 0 40px;
}

.recruit-strength-text p {
	line-height: 1.75;
	font-family: 'Noto Serif JP', serif;
}

.recruit-strength-tag {
    display: flex;
    align-items: center;
    margin-bottom: 14px;
}

.recruit-strength-heading-wrap {
    display: flex;
    justify-content: flex-start; /* デフォルトでは横並び */
    align-items: center; /* 中央に揃える */
	margin-bottom: 20px;
}

.strength-number {
    font-size: 1.2rem;
	font-weight: 400;
    color: white;
    padding: 5px 20px;
    background-color: #43A4C7;
    clip-path: polygon(10% 0, 100% 0%, 90% 100%, 0% 100%);
    display: inline-block;
    margin-right: 16px;
	font-family: 'Oswald', sans-serif;
}

.strength-number-nb {
	font-size: 2.5rem;
	margin-left: 4px;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
}

.strength-tag-text {
    font-size: 16px;
    color: #fff;
    display: inline-block;
}

.recruit-strength-heading {
    font-size: 2.2rem;
	color: #1C799A;
}

.recruit-guideline-subtitle {
    font-size: 1.6rem;
    display: block;
    margin-bottom: 10px;
    color: #333;
}

.recruit-guideline-title {
    font-size: 2.4rem;
    margin-bottom: 30px;
    color: #333;
}

.recruit-guideline-underline {
    display: inline-block;
    margin: 0 auto;
}

@media (max-width: 768px) {
	.strength-number {
		margin-bottom: 16px;
	}
}



/* guidelineセクション */
.recruit-guideline {
    margin: 0 auto;
    margin-bottom: 100px;
    padding: 40px;
    text-align: center;
    font-family: 'Noto Serif JP', serif;
}

.recruit-guideline-subtitle {
    font-family: 'Oswald', sans-serif;
    font-weight: 400;
}

.recruit-guideline-underline::before, 
.recruit-guideline-underline::after {
    content: "";
    display: inline-block;
    width: 40px;
    height: 4px;
    vertical-align: middle;
}

.recruit-guideline-underline::before {
    background-color: #43A4C7; /* 左側のブルー */
    margin-right: 0;
}

.recruit-guideline-underline::after {
    background-color: #AAB6C1; /* 右側のグレー */
    margin-left: 0;
}

.recruit-guideline-table {
    width: 100%;
    max-width: 1230px;
    margin: 0 auto;
    padding-top: 50px;
    border-collapse: collapse;
}

.recruit-guideline-row {
    display: flex;
    border-bottom: 0.5px solid #707070;
}

.recruit-guideline-cell {
    padding: 24px 20px;
    border-bottom: 0.5px solid #707070;
    word-wrap: break-word;
}

.recruit-guideline-cell:first-child {
    width: 20%; /* 左の文字エリアを20%に設定 */
    font-weight: bold;
}

.recruit-guideline-cell:last-child {
    width: 80%; /* 右のコンテンツエリアを80%に設定 */
    text-align: left; /* テキストを左揃えに設定 */
}

/* レスポンシブ対応 (768px以下) */
@media (max-width: 768px) {
    .recruit-guideline {
        margin-bottom: 40px;
    }

	.recruit-guideline-table {
		padding-top: 40px;
	}

    /* recruit-guideline-rowを縦並びにする */
    .recruit-guideline-row {
        flex-direction: column; /* 縦並びに変更 */
        align-items: flex-start; /* 左揃えにする */
    }

	/* 1つ目のrowにだけ下線をなくす */
	.recruit-guideline-row .recruit-guideline-cell {
   		 border-bottom: none;
	}

    .recruit-guideline-cell:first-child, 
    .recruit-guideline-cell:last-child {
        width: 100%; /* 両方のセルを100%幅に設定 */
        text-align: left; /* テキストを左揃えにする */
    }

	.recruit-guideline-cell:first-child {
        padding-bottom: 10px;
    }

	.recruit-guideline-cell:last-child {
        padding-top: 0;
    }

    .recruit-strength-item {
        flex-direction: column;
        align-items: flex-start;
        padding: 4%;
    }

    .recruit-strength-image, .recruit-strength-text {
        width: 100%;
        padding: 0;
    }

    .recruit-strength-image {
        order: 2;
    }

    .recruit-strength-image img {
        padding: 0;
        width: 100%;
    }

    .recruit-strength-text {
        padding: 20px 0;
        text-align: left;
        order: 1;
    }

    .recruit-strength-tag {
        justify-content: center; /* タグ部分を中央揃え */
    }

    .recruit-strength-heading {
        text-align: left;
    }

    .recruit-strength-heading-wrap {
        flex-direction: column; /* 縦並びに変更 */
        align-items: flex-start; /* 左揃えにする */
    }
}




.rb-sec-slider-area .works-maker-title {
	margin-bottom: 30px;
}
/* スライダーコンテナ */
/* スライダー全体のコンテナ */
.rb-slider-container {
    position: relative;
    overflow: hidden;
    width: 100%;
}

/* スライドのラッパー */
.rb-slider-wrapper {
    display: flex;
    transition: transform 0.5s ease;
    will-change: transform;
    flex-wrap: nowrap;
}

/* 各スライドのスタイル */
.rb-slider-slide {
    flex: 0 0 70%;
    margin: 0 15px;
    transition: transform 0.5s ease, opacity 0.5s ease;
    transform-origin: center;
    text-align: center;
    opacity: 0.7;
}

.rb-slider-slide h3 {
    margin: 20px 0 10px 0;
    font-size: 2.2rem;
    font-family: 'Noto Serif JP', serif;
}

.rb-slider-slide p {
    width: 85%;
    margin: 0 auto;
    text-align: left;
}

.rb-slider-slide.active {
    opacity: 1;
}

/* クローンスライドのスタイル（必要に応じて） */
.rb-slider-slide.clone {
    /* クローンを区別するためのスタイルを追加できます */
}

/* ナビゲーション（前へ、次へボタンとページネーション）のスタイル */
.rb-slider-navigation {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 50px;
    gap: 10px;
}

/* 前へ、次へボタンのスタイル */
.rb-slider-prev,
.rb-slider-next {
    width: 40px;
    height: 40px;
    background-color: #EDF6F8;
    border: none;
    border-radius: 50%; /* ボタンを正円に */
    cursor: pointer;
    position: relative;
    transition: background-color 0.3s ease;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 40px;
}

.rb-slider-prev::before,
.rb-slider-next::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
}

.rb-slider-prev::before {
    border-width: 7px 10px 7px 0;
    border-color: transparent #43A4C7 transparent transparent;
}

.rb-slider-next::before {
    border-width: 7px 0 7px 10px;
    border-color: transparent transparent transparent #43A4C7;
}

.rb-slider-prev:hover,
.rb-slider-next:hover {
    background-color: #D6EBF0;
}

/* ページネーションのスタイル */
.rb-slider-pagination {
    display: flex;
    justify-content: center;
    gap: 20px;
}

.rb-slider-pagination > span {
    width: 12px;
    height: 12px;
    background-color: #ccc;
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.rb-slider-pagination > span.active {
    background-color: #43A4C7;
}

.rb-slider-pagination > span:hover {
    background-color: #1C799A;
}

/* スマホ表示（768px以下）の際のスタイル */
@media (max-width: 768px) {
    .rb-sec-title-area p {
        text-align: left;
        padding: 0 4%;
        width: 100%;
    }

    .rb-slider-slide {
        flex: 0 0 100%;
    }

    .rb-slider-pagination {
        gap: 12px;
    }

    /* 前へ、次へボタンのサイズ調整 */
    .rb-slider-prev,
    .rb-slider-next {
        width: 30px;
        height: 30px;
        margin: 0 20px;
    }

    .rb-slider-prev::before {
        border-width: 5px 7px 5px 0;
        border-color: transparent #43A4C7 transparent transparent;
    }

    .rb-slider-next::before {
        border-width: 5px 0 5px 7px;
        border-color: transparent transparent transparent #43A4C7;
    }

    .rb-slider-navigation {
        gap: 5px;
    }

    .rb-slider-pagination > span {
        width: 10px;
        height: 10px;
    }
}

/* 480px以下の画面幅に対するスタイル */
@media (max-width: 480px) {
    .rb-slider-prev,
    .rb-slider-next {
        width: 25px;
        height: 25px;
        margin: 0 10px;
    }

    .rb-slider-prev::before {
        border-width: 4px 6px 4px 0;
        border-color: transparent #43A4C7 transparent transparent;
    }

    .rb-slider-next::before {
        border-width: 4px 0 4px 6px;
        border-color: transparent transparent transparent #43A4C7;
    }

    .rb-slider-pagination > span {
        width: 8px;
        height: 8px;
    }
}

.sp-br {
	display: none;
}

@media (max-width: 768px) {
	.sp-br {
		display: block;
	}
}