@charset "UTF-8";

/*
■ 汎用

■ TOPページ
■ 汎用パーツ
■ 汎用ライブラリ1

■ JSライブラリ
*/



/* ■ 汎用 ==================================================================================== */

/*
ニュース
Q&A
*/

html {
  scroll-behavior: smooth;
}

/* 見出し --------------------------------------------------- */

.MdsH2 .TitleEn {
color: var(--color-main);
}

@media only screen and (max-width: 767px) {

	.MdsH2 .TitleEn {
	color: var(--color-main);
	letter-spacing: 0.08em;
	font-size: 3rem;
	display: block;
	}

	.MdsH2 .Title {
	display: inline-block;
	letter-spacing: 0.2em;
	font-size: 1.5rem;
	}

	.Lead1 {
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: 0.05em;
	}

	.SubMds {
	display: block;
	margin: 0 auto 40px auto;
	position: relative;
	padding: 0 55px;
	font-size: 2.4rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	width: fit-content;
	}

	.SubMds:before, .SubMds:after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 40px;
	height: 1px;
	background-color: black;
	}

	.SubMds:before {
	left:0;
	}
	.SubMds:after {
	right: 0;
	}

}

@media print, screen and (min-width: 768px) {

	.MdsH2 .TitleEn {
	color: var(--color-main);
	letter-spacing: 0.08em;
	font-size: 4rem;
	}

	.MdsH2 .Title {
	display: inline-block;
	margin-left: 2rem;
	letter-spacing: 0.2em;
	font-size: 1.8rem;
	}
	
	.Lead1 {
	font-size: 1.5rem;
	line-height: 2;
	letter-spacing: 0.08em;
	}

	.SubMds {
	display: block;
	margin: 0 auto 40px auto;
	position: relative;
	padding: 0 55px;
	font-size: 3.0rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	width: fit-content;
	}

	.SubMds:before, .SubMds:after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 40px;
	height: 1px;
	background-color: black;
	}

	.SubMds:before {
	left:0;
	}
	.SubMds:after {
	right: 0;
	}

}


/* 詳細 ページタイトル --------------------------------------------------- */

.TitleWrap {

  background: 
    linear-gradient(to right, #009966, #40d9a4) top / 100% 70% no-repeat,
    #ffffff;
}

.TitleWrapIn {
background: #fff;
}

@media only screen and (max-width: 767px) {

	.TitleWrap {
	padding: 3rem 1.5rem 0 1.5rem;
	}

	.TitleWrap .Title1 {
	font-size: 2.5rem;
	line-height: 1.3;
	color: var(--color-main);
	}

	.TitleWrap .Title2 {
	margin-top: 1rem;
	font-size: 1.5rem;
	letter-spacing: 0.2em;
	}
	
	.TitleWrapIn {
	padding: 2.5rem 2.5rem 0 2.5rem;
	}

	.SecMds {
	margin-bottom: 2rem;
	padding-bottom: 1.5rem;
	font-size: 1.7rem;
	letter-spacing: 0.05em;
	line-height: 1.4;
	color: var(--color-main);
	border-bottom: 1px solid var(--color-main);
	}

	.SectionH2 {
	margin-bottom: 2rem;
	padding-bottom: 1.5rem;
	font-size: 2rem;
	letter-spacing: 0.05em;
	line-height: 1.4;
	border-bottom: 4px solid var(--color-main);	
	}


}

@media print, screen and (min-width: 768px) {

	.TitleWrap {
	padding-top: 10rem;
	padding-right: 3rem;
	padding-left: 3rem;
	}

	.TitleWrap .Title1 {
	font-size: 5.5rem;
	font-weight: 500;
	color: var(--color-main);
	}

	.TitleWrap .Title2 {
	margin-top: 2rem;
	font-size: 2.6rem;
	letter-spacing: 0.2em;
	}
	
	.TitleWrapIn {
	padding: 5rem 5rem 5rem 5rem;
	}

	.SecMds {
	margin-bottom: 2rem;
	padding-bottom: 1.5rem;
	font-size: 2.6rem;
	letter-spacing: 0.05em;
	color: var(--color-main);
	border-bottom: 1px solid var(--color-main);
	}
	
	.SectionH2 {
	margin-bottom: 2rem;
	padding-bottom: 2rem;
	font-size: 3.4rem;
	letter-spacing: 0.05em;
	border-bottom: 6px solid var(--color-main);	
	}

}


/* ニュース --------------------------------------------------- */

.NewsUnit {
border-top: 1px solid #e5e5e5;
}

.NewsUnit dl {
border-bottom: 1px solid #e5e5e5;
}

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

.SectionNews .NewsSort {
display: flex;
}

.SectionNews .NewsSort a {
color: #333;
}

.SectionNews .NewsSort .Current {
padding: 3px 12px;
background: #eaeaea;
border-radius: 20px; 
}

@media only screen and (max-width: 767px) {

	.SectionNews {
	margin-top: 5rem;
	}

	.SectionNews .NewsSort {
	padding-top: 0.8rem;
	}

	.SectionNews .NewsSort li {
	margin-left: 0.8rem;
	}

	.SectionNews .NewsSort li:first-child {
	margin-left: 0;
	}

	.SectionNews .NewsSort a {
	font-size: 1.1rem;
	letter-spacing: 0.05em;
	}
	
	.SectionNews .NewsUnit_Date {
	padding-right: 1rem;
	font-size: 1.2rem;
	font-weight: normal;
	font-variant-numeric: tabular-nums;
	}
	
	.BannarArea {
	margin-top: 3rem;
	text-align: center;
	}
	
	.BannarArea a {
	display: block;
	width: 80%;
	margin: 0 auto;
	}

	.NewsUnit {
	margin-top: 1rem;
	}

	.NewsUnit dl {
	padding: 1rem 0;
	}

	.NewsUnit dd {
	margin-top: 0.5rem;
	font-size: 1.3rem;
	line-height: 1.6;
	}

	.NewsUnit .Icon {
	width: 12rem;
	margin-top: -0.2rem;
	padding: 0.4rem 0rem;
	font-size: 0.8rem;
	font-weight: normal;
	letter-spacing: 0;
	}
	
	.SectionNews .NewsSort .Current {
	padding: 3px 5px;
	}

}

@media only screen and (max-width: 372px) {

	.SectionNews .NewsSort li {
	margin-left: 1rem;
	}

	.SectionNews .NewsSort a {
	font-size: 1rem;
	}

}


@media print, screen and (min-width: 768px) {

	.SectionNews {
	margin-top: 6rem;
	}

	.SectionNews .TitleUnit {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	padding-bottom: 2rem !important;
	}

	.SectionNews .NewsSort {
	padding-bottom: 1rem;
	}

	.SectionNews .NewsSort li {
	margin-left: 2rem;
	}

	.SectionNews .NewsSort a {
	font-size: 1.4rem;
	}
	
	.SectionNews .NewsUnit_Date {
	padding-right: 3rem;
	font-size: 1.4rem;
	font-weight: normal;
	font-variant-numeric: tabular-nums;
	}
	
	.BannarArea {
	margin-top: 6rem;
	text-align: center;
	}
	
	.BannarArea a {
	display: block;
	width: 40rem;
	margin: 0 auto;
	}

	.NewsUnit dl {
	padding: 1.5rem 0;
	}

	.NewsUnit dt {
	display: flex;
	align-items: center;
	width: 31rem !important;
	}

	.NewsUnit dd {
	font-size: 1.5rem;
	}

	.NewsUnit .Icon {
	width: 15rem;
	padding: 0.7rem 0;
	font-size: 1.1rem;
	border-radius: 50px;
	font-weight: normal;
	letter-spacing: 0;
	}

}


/* Q&A --------------------------------------------------- */

.QA {
margin-top: var(--gap-int);
}

.QA_Unit {
border: 1px solid var(--color-sub4);
}

.QA_Q {
font-weight: 700;
}

.QA_Q.Current {
background-color:  var(--color-sub5); 
}

@media only screen and (max-width: 767px) {

	.QA_Unit {
	margin-top: 1rem;
	}

	.QA_Q {
	padding: 1.5rem 4rem 1.5rem 1.5rem;
	line-height: 1.7;
	}

	.QA_A {
	padding: 1.5rem 1.5rem;
	line-height: 1.7;
	}

}

@media print, screen and (min-width: 768px) {

	.QA_Unit {
	margin-top: 1rem;
	}

	.QA_Q {
	padding: 2rem 6rem 2rem 2rem;
	line-height: 1.8;
	}

	.QA_A {
	padding: 2rem 2rem;
	line-height: 1.8;
	}

}



/* ■ TOPページ ==================================================================================== */


/* Swiperが初期化される前の表示崩れを防止 */
.swiper {
  width: 100%;
  overflow: hidden;
  visibility: hidden; /* 初期化まで非表示にしておく */
}

.swiper.swiper-initialized {
  visibility: visible;
}

.swiper-wrapper {
  display: flex;
}

.swiper-slide {
  flex-shrink: 0;
  width: auto; /* ここはスライドの個別幅に応じて調整可能 */
  box-sizing: border-box;
}

.KeyVisualSlide {
  opacity: 0;
  transition: opacity 1s ease; /* 1秒かけて表示 */
}

.KeyVisualSlide.is-show {                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
  opacity: 1;
}

.SectionWhat .MdsH2,
.SectionWhat .TitleEn {
color: #fff;
}

.SectionWhat .TitleEn {
display: block;
}

.SectionAddress .Caution {
color: #c90000 !important;
text-decoration: underline;
}

@media only screen and (max-width: 767px) {

	.TopBnnarArea {
	position: relative;
	display: flex;
	align-items: stretch; /* 子要素を同じ高さに伸ばす */
	margin-top: -4rem;
	padding: 0 1rem;
	z-index: 20;
	}

	.TopBnnarArea1 {
	width: 53%;
	}

	.TopBnnarArea2 {
	width: 47%;
	}

	.TopBnnarArea2 a:hover {
	opacity: 1 !important;
	}

	.SectionWhat {
	margin-top: 6rem;
	padding-top: 3rem;
	background: var(--color-main);
	}	
	
	.SectionWhat .Thumb {
	margin-top: 2rem;
	}
	
	.SectionWhat .LeadUnit .BTnTo {
	margin-top: 1rem;
	}

	.SectionWhat .LeadUnit .BTnTo a {
	width: 100%;
	}

	.SectionWhat .MdsH2 {
	text-align: center;
	}
	
	.SectionWhat .LeadUnit {
	position: relative;
	padding: 2.5rem 2.5rem;
	background: linear-gradient(to bottom, #009b63 50%, #f2f2f2 50%);	
	}
	
	.SectionWhat .LeadUnitIn {
	padding: 3rem 3rem;
	background: #fff;
	}

	.SectionWhat .LeadUnitIn .Lead1 {
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	line-height: 2;
	}

	.SectionExhibition {
	padding-top: 4rem;
	background: linear-gradient(to bottom, #f2f2f2 60%, #ffffff 40%);
	}

	
	.SectionExhibition .Lead1 {
	margin-top: 1.5rem;
	font-size: 1.4rem;
	}

	.SectionExhibition .ExhibitionPhUnit {
	margin-top: 2.5rem;
	}
	
	.SectionExhibition .ExhibitionPhUnit li {
	margin-top: 1.5rem;
	}

	.SectionExhibition .ExhibitionPhUnit .UnitMds {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	height: 6.5rem;
	color: #fff;
	background: var(--color-main);
	text-align: center;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	}

	.SectionExhibition .ExhibitionPhUnit .UnitMds:before {
	content: "";
	position: absolute;
	top: 3rem;
	right: 1.5rem;
	width: 2rem;
	height: 1.3rem;
	background-image: url(/img/common/icon/Allow_W2.png);
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;	
	}	
	
	.SectionReport {
	margin-top: 7rem;
	padding-bottom: 5rem;
	}
	
	.SectionReport .Lead1 {
	margin-top: 1rem;
	font-size: 1.4rem;
	}
	
	.SectionReport .LeadUnitWrap {
	margin-top: 2rem;
	}
	
	.SectionReport .LeadUnitWrap .LeadMds {
	margin-top: 2rem;
	color: var(--color-main);
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.6;
	}
	
	.SectionReport .LeadUnitList {
	margin-top: 2rem;
	font-size: 1.5rem;
	letter-spacing: 0.2em;
	}

	.SectionReport .LeadUnitList li {
	margin-top: 0.5rem;
	}

	.SectionReport .BTnTo {
	margin-top: 2rem;
	}

	.SectionReport .BTnTo a {
	width: 100%;
	}
	
	.SectionAddress {
	padding: 4rem 2.5rem 5rem 2.5rem;
	text-align: center;
	}

	.SectionAddress .Mds1 {
	color: var(--color-main);
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: 0.1em;	
	line-height: 1.8;
	}

	.SectionAddress .Mds2 {
	margin-top: 1.5rem;
	font-size: 1.3rem;
    line-height: 1.8;
	letter-spacing: 0.05em;
	}
	
	.SectionAddress .BtnToList {
	margin-top: 2rem;
	}

	.SectionAddress .BtnToList li:first-child {

	}

	.SectionAddress .BtnToList li:last-child {
	margin-top: 1rem;
	
	}

	.SectionAddress .BtnToList li a {
	width: 100%;
	padding-top: 1.2rem;
	padding-bottom: 1.2rem;

	}


}

@media only screen and (max-width: 372px) {

    .SectionAddress .Mds2 {
	 font-size: 1.3rem;
	 }

}

@media print, screen and (min-width: 768px) {

	.TopBnnarArea {
	position: relative;
	display: flex;
	justify-content: space-between;
	margin-top: -8rem;
	z-index: 20;
	}
	
	.TopBnnarArea1 {
	margin-right: 2rem;
	}
	
	.TopBnnarArea2 a:hover {
	opacity: 1 !important;
	}

	.SectionWhat {
	margin-top: 10rem;
	display: flex;
	align-items: stretch;
	background: #f2f2f2;
	padding-bottom: 5rem;
	}	
	
	.SectionWhat .Thumb,
	.SectionWhat .LeadUnit {
	width: 50%;
	max-height: 60rem;
	}
	
	.SectionWhat .Thumb img {
	height: 100%;
	object-fit: cover;
	}

	.SectionWhat .MdsH2 {
	text-align: right;
	}
	
	.SectionWhat .LeadUnit {
	position: relative;
	padding: 5rem 5rem 0 5rem;
	background: var(--color-main);
	}
	
	.SectionWhat .LeadUnitIn {
	max-width: 60rem;
	margin-top: 6rem;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: -5rem;
	padding: 7rem 4.5rem 5rem 4.5rem;
	background: #fff;
	}
	
	.SectionWhat .LeadUnitIn .BTnTo {
	margin-top: 4rem;
	}

	.SectionWhat .LeadUnitIn .BTnTo a {
	width: 100%;
	}

	.SectionWhat .LeadUnitIn .Lead1 {
	font-size: 1.5rem;
	letter-spacing: 0.1em;
	line-height: 3;
	}

	.SectionExhibition {
	padding-top: 10rem;
	background: linear-gradient(to bottom, #f2f2f2 60%, #ffffff 40%);
	}
	
	.SectionExhibition .Lead1 {
	margin-top: 2rem;
	font-size: 1.5rem;
	}

	.SectionExhibition .ExhibitionPhUnit {
	display: flex;
	justify-content: space-between;
	margin-top: 4rem;
	}
	
	.SectionExhibition .ExhibitionPhUnit li {
	width: calc((100% / 3) - 1.5rem);
	}

	.ExhibitionPhUnit li .UnitPh {
	position: relative;
	overflow: hidden; 
	}

	.SectionExhibition .ExhibitionPhUnit li .UnitPh img {
	transition: transform 0.4s ease, opacity 0.4s ease;
	display: block;
	}

	.ExhibitionPhUnit li:hover a {
	opacity: 1 !important; /* 少し暗くして演出するなら */
	}

	.ExhibitionPhUnit li:hover .UnitPh img {
	transform: scale(1.1);

	}

	.SectionExhibition .ExhibitionPhUnit .UnitMds {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	height: 7rem;
	color: #fff;
	background: var(--color-main);
	text-align: center;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	}

	.SectionExhibition .ExhibitionPhUnit .UnitMds:before {
	content: "";
	position: absolute;
	top: 3rem;
	right: 1.5rem;
	width: 2rem;
	height: 1.3rem;
	background-image: url(/img/common/icon/Allow_W2.png);
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;	
	}	
	
	.SectionReport {
	margin-top: 16rem;
	padding-bottom: 14rem;
	}
	
	.SectionReport .Lead1 {
	margin-top: 2rem;
	font-size: 1.5rem;
	}
	
	.SectionReport .LeadUnitWrap {
	display: flex;
	justify-content: space-between;
	margin-top: 4.5rem;
	}

	.SectionReport .LeadUnitWrap .Ph {

	}

	.SectionReport .LeadUnitWrap .LeadUnit {

	}
	
	.SectionReport .LeadUnitWrap .LeadMds {
	color: var(--color-main);
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	}
	
	.SectionReport .LeadUnitList {
	display: flex;
	flex-wrap: wrap;
	margin-top: 2rem;
	font-size: 1.5rem;
	letter-spacing: 0.2em;
	}

	.SectionReport .LeadUnitList li {
	width: calc(100% / 3);
	margin-top: 0.5rem;
	font-size: 1.3rem;
	letter-spacing: 0.08em;
	}

	.SectionReport .LeadUnitList li:before {
	top: 0.5rem;
	}

	.SectionReport .BTnTo {
	margin-top: 5rem;
	text-align: center;
	}

	.SectionReport .BTnTo a {
	width: 35rem;
	margin: 0 auto;
	}
	
	.SectionAddress {
	padding: 9rem 0 12rem 0;
	text-align: center;
	}

	.SectionAddress .Mds1 {
	color: var(--color-main);
	font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: 0.16em;	
	}

	.SectionAddress .Mds2 {
	margin-top: 3rem;
	line-height: 2.6;
	}
	
	.SectionAddress .BtnToList {
	margin-top: 5rem;
	display: flex;
	justify-content: center;
	}

	.SectionAddress .BtnToList li:first-child {
	width: 40rem;
	margin-right: 1rem;
	}

	.SectionAddress .BtnToList li:last-child {
	width: 40rem;
	margin-left: 1rem;
	}

	.SectionAddress .BtnToList li a {
	width: 100%;
	padding-top: 2rem;
	padding-bottom: 2rem;

	}

}



/* ■ GPECとは ==================================================================================== */

.section-heading {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.heading-number {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #ffe000;
    color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 24px;
    font-weight: bold;
    z-index: 2;
    flex-shrink: 0; 
}

.heading-text {
    flex-grow: 1;
    background-color: #009b63;
    color: #ffe000;
    padding: 10px 20px 10px 50px;
    margin-left: -30px;
    font-size: 20px;
    font-weight: bold;
    height: 60px; 
    display: flex;
    align-items: center; 
    line-height: 1.5;
}

.ImgCenter img {
max-width: 850px;
margin: 30px auto 0 auto;
}

@media (max-width: 767px) {
    
    .heading-number {
        width: 50px;
        height: 50px;
        font-size: 20px;
    }

    .heading-text {
        font-size: 16px; 
        height: auto;
        align-items: flex-start; 
        margin-left: -25px; 
        padding: 10px 15px 10px 40px; 
    }
    
    .ImgCenter img {
	    display: block;
	    width: 80%;
	    margin: 30px auto 0 auto;
    }
    
}




/* ■ 出展対象／来場対象 ==================================================================================== */


/* メインヘッダー */
.main-header {
    color: white;
    padding: 15px 10px;
    text-align: center;
    margin-bottom: 20px;
    font-size: 18px;
    font-weight: bold;
}


/* ---------------------------------- */
/* 共通の基本スタイル (SPの縦並びがデフォルト) */
/* ---------------------------------- */
.container {
    margin: 0 auto 50px auto; /* 上下のマージン */
    display: block; /* SPデフォルト: 縦並び */
}

/* 各ボックスのラッパー（アイコンとテキストを含む親要素） */
.box-wrapper {
    display: flex;
    align-items: flex-start;
    padding: 15px;
    margin-bottom: 20px;
    border: 1px solid #ddd;
    background-color: #ffffff;
}

/* アイコン部分 */
.icon {
    flex-shrink: 0; /* 幅を固定し、縮まないようにする */
    margin-right: 15px;
}

/* アイコン画像 (PCでのサイズ) */
.icon img {
    width: 80px;
}

/* テキスト部分 */
.text {
    flex-grow: 1; /* 残りのスペースを埋める */
}

.text h3 {
    margin: 0 10px 0 0;
    font-size: 1.6rem;
    line-height: 1.5;
    margin-bottom: 15px;
    display: inline-block;
}

/* ---------------------------------- */
/* ★NEWアイコンの追加 */
/* ---------------------------------- */
.text h3 span {
    display: inline-block;
    vertical-align: middle;
    background-color: #ff0000;
    color: white;
    font-size: 1.0rem;
    font-weight: bold;
    line-height: 1;
    padding: 3px 6px;
    border-radius: 3px;
    margin-left: 5px;
    position: relative;
    top: -2px;
}

.text p {
    font-size: 1.4rem;
    line-height: 1.5;
}

.Method__Box {
	display: inline-block;
    margin-top: 20px;
    background-color: #ebebeb;
    padding: 20px;
    font-size: 1.4rem;
    line-height: 1.8;
    letter-spacing: 0.05em;
}   

/* ---------------------------------- */
/* 📱 SP（スマートフォン）向けスタイル調整 */
/* ---------------------------------- */
@media only screen and (max-width: 767px) {
    .icon img {
    width: 50px;
    }
    
    .SubLead {
    width: 50px;
    }

    .TargetLead {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.5;
    }
    
}

/* ---------------------------------- */
/* 💻 PC（デスクトップ・タブレット）向けスタイル */
/* 画面幅が768px以上の場合に適用 */
/* ---------------------------------- */
@media (min-width: 768px) {
    .container {
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        max-width: 1200px;
    }

    .box-wrapper {
        width: calc(50% - 10px); 
        margin-bottom: 0; 
        flex: initial; 
    }
    
    .TargetLead {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 15px;
    }
    
}

/* -------- 来場対象 -------- */

.layout-container {
    margin: 0 auto;
}

.item-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
}

.item {
    background-color: #d5e3f3;
    color: #007fc1;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    padding: 15px 10px;
    margin-bottom: 10px;
}

@media (max-width: 767px) {
	.item {
    font-size: 16px;
    }
}

.item {
    width: 100%;
}

@media (min-width: 768px) {
    .item-list {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    
    .item {
        width: calc(50% - 10px); 
        margin-bottom: 20px;
    }

}

.TargetVisitorsImg img {
max-width: 850px;
margin: 30px auto;
}


        
       
/* ■ 出展要項 ==================================================================================== */

.SecSubMds {
margin: 30px 0 15px 0;
font-size: 18px;
}

.SecSubMds span {
font-size: 14px;
font-weight: normal;
}


/* --- 共通スタイル --- */
.DLHori {
    /* dlコンテナの余白をリセット */
    margin: 0;
    padding: 0;
}

.DLHori dl {
    /* 各項目を区切るための下線 */
    margin: 0;
    padding: 15px 0; /* 各項目の上下余白 */
    border-bottom: 1px solid #ccc; /* 区切り線 */
}

.DLHori dt {
    /* 項目名（1) 基礎小間 など）の共通スタイル */
    font-weight: bold;
    color: #333;
    padding: 5px 0;
}

.DLHori dd {
    /* 内容部の共通スタイル */
    margin-left: 0;
    padding: 5px 0;
    line-height: 1.6;
}

.DLHori dd span {
    /* 価格の強調スタイル */
    font-weight: bold;
    font-size: 1.1em;
}

.ListKomeS {
    /* リスト（米印部分）のスタイル */
    list-style: none; /* デフォルトのリストマークを消す */
    padding-left: 0;
    margin-bottom: 0;
}

.ListKomeS li {
    /* リストアイテムのスタイル */
    position: relative;
    padding-left: 1.5em; /* 米印分のスペースを確保 */
    padding-bottom: 2px;
}

.ListKomeS li::before {
    /* 米印「※」をカスタムで追加 */
    content: "※"; 
    position: absolute;
    left: 0;
    color: #555;
    font-weight: normal;
}


/* ---------------------------------- */
/* --- PCレイアウト (768px以上) --- */
/* dtとddを横並びにする */
/* ---------------------------------- */
@media (min-width: 768px) {
    .DLHori dl {
        /* dlをFlexコンテナにし、dtとddを横並びにする */
        display: flex;
        align-items: flex-start; /* dtがddの最初の行と揃うように上端揃え */
    }

    .DLHori dt {
        /* dtに固定幅を設定し、項目の縦位置を揃える */
        flex-basis: 250px; /* 項目名に割り当てる幅 (必要に応じて調整してください) */
        flex-shrink: 0; /* 幅を縮めない */
        padding-right: 20px; /* ddとの間にスペース */
    }

    .DLHori dd {
        /* ddが残りの幅を占める */
        flex-grow: 1;
    }
}


/* ---------------------------------- */
/* --- SPレイアウト (767px以下) --- */
/* dtとddを縦並びにする */
/* ---------------------------------- */
@media (max-width: 767px) {
    .DLHori dl {
        /* デフォルトのブロック表示（縦並び）に戻す */
        display: block;
    }

    .DLHori dt {
        /* PCで設定した幅の指定をリセット */
        flex-basis: auto; 
        padding-right: 0;
    }
    
    .DLHori dd {
        /* ddの内容をdtより少し右にずらす（インデント） */
        padding-left: 10px; 
    }
}


.note_small {
    font-size: 12px;
    line-height: 1.8;
    text-indent: -1em;
    padding-left: 1em;
    box-sizing: border-box;
}



.BoothImg img {
	display: block;
	margin: 20px 0 0 0;
	width: 400px !important;
}


.ScheImg img {
	display: block;
	margin: 25px auto 0 auto;
	width: 650px !important;
}




/* ■ お問い合わせ ==================================================================================== */

.FlowList {
position: relative;
display: flex;
justify-content: space-between;
}

.FlowList .Number1,
.FlowList .Number2,
.FlowList .Number3 {
position: relative;
}

.FlowList li.Current,
.FlowList li.Done {
color: var(--color-main);
}

.PageContact .Caution {
color: #df0707;
}

@media only screen and (max-width: 767px) {
	
	.FlowList {
	margin-top: 3rem;
	}

	.FlowList li {
	width: 4rem;
	text-align: center;
	font-size: 1rem;
	letter-spacing: 0.1em;
	color: #c5c5c5;
	}


	.FlowList:before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 2rem;
	left: 0;
	width: 100%;
	height: 2px;
	background-image: url(../img/contact/DotLine_SP.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number1:before {
	content: '';
	display: inline-block;
	width: 4rem;
	height: 4rem;
	margin-bottom: 1rem;
	background-image: url(../img/contact/Num1.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number2:before {
	content: '';
	display: inline-block;
	width: 4rem;
	height: 4rem;
	margin-bottom: 1rem;
	background-image: url(../img/contact/Num2.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number3:before {
	content: '';
	display: inline-block;
	width: 4rem;
	height: 4rem;
	margin-bottom: 1rem;
	background-image: url(../img/contact/Num3.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number2.Current:before,
	.FlowList .Number2.Done:before {
	content: '';
	display: inline-block;
	width: 4rem;
	height: 4rem;
	margin-bottom: 1rem;
	background-image: url(../img/contact/Num2_Current.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number3.Current:before {
	content: '';
	display: inline-block;
	width: 4rem;
	height: 4rem;
	margin-bottom: 1rem;
	background-image: url(../img/contact/Num3_Current.png);
	background-size: contain;
	vertical-align: middle;
	}

	
	.Complete .LeadMain {
	margin-top: 5rem;
	font-size: 1.6rem;
	line-height: 1.8;
	font-weight: 600;
	}
	
	.Complete .FlowList2 {
	margin-top: 7rem !important;
	}
	
	.Complete .Lead1_1 p {
	margin-top: 2rem;
	font-size: 1.4rem;
	}
	
	.Caution_Txt {
	margin-top: 2rem !important;
	}
	
	.Complete .BackBtnUnit1 {
	margin-top: 3rem;
	padding-top: 3rem;
	border-top: 1px solid #ddd;
	text-align: center;
	width: 100%;
	}

	.Complete .BackBtnUnit1 img {
	width: 15rem;
	margin-bottom: 1rem;
	}

	.Complete .BackBtnUnit1 a:first-child {
	margin-bottom: 2rem;
	}

	.Complete .BackBtnUnit1 a {
	width: 80%;
	}

	.PageContact .NameUnit input:last-child {
	margin-top: 1rem;
	}

	.PageContact .RadioCheckboxUnit p:first-child {
	margin-bottom: 1rem;
	}
	
	.PageContact .Footer_CreditIn .Footer_Logo2,
	.PageExihibit .Footer_CreditIn .Footer_Logo2 {
	margin-top: 2rem;
	}
	
	.PageContact .FooterContact .Footer_Credit,
	.PageExihibit .FooterContact .Footer_Credit {
	margin-top: 0;
	}


}


@media print, screen and (min-width: 768px) {

	.FlowList {
	width: 57rem;
	margin-top: 10rem;
	margin-left: auto;
	margin-right: auto;
	}

	.FlowList li {
	width: 5rem;
	text-align: center;
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0.2em;
	color: #c5c5c5;
	}

	.FlowList:before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 2.5rem;
	left: 0;
	width: 100%;
	height: 2px;
	background-image: url(../img/contact/DotLine_PC.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number1:before {
	content: '';
	display: inline-block;
	width: 5rem;
	height: 5rem;
	margin-bottom: 2rem;
	background-image: url(../img/contact/Num1.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number2:before {
	content: '';
	display: inline-block;
	width: 5rem;
	height: 5rem;
	margin-bottom: 2rem;
	background-image: url(../img/contact/Num2.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number3:before {
	content: '';
	display: inline-block;
	width: 5rem;
	height: 5rem;
	margin-bottom: 2rem;
	background-image: url(../img/contact/Num3.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number2.Current:before,
	.FlowList .Number2.Done:before {
	content: '';
	display: inline-block;
	width: 5rem;
	height: 5rem;
	margin-bottom: 2rem;
	background-image: url(../img/contact/Num2_Current.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number3.Current:before {
	content: '';
	display: inline-block;
	width: 5rem;
	height: 5rem;
	margin-bottom: 2rem;
	background-image: url(../img/contact/Num3_Current.png);
	background-size: contain;
	vertical-align: middle;
	}
	
	 .Complete .LeadMain {
	margin-top: 5rem;
	font-size: 1.8rem;
	line-height: 1.8;
	font-weight: 600;
	}
	
	 .Complete .BackBtnUnit1 {
	display: flex;
	justify-content: center;
	margin-top: 5rem;
	padding-top: 3rem;
	border-top: 1px solid #ddd;
	text-align: center;
	}

	.Complete .BackBtnUnit1 img {
	width: 15rem;
	margin-bottom: 1rem;
	}

	.Complete .BackBtnUnit1 a {
	margin: 0 1.5rem;
	font-size: 1.4rem;
	}

	.Complete .BackBtnUnit1 .BtnL {
	padding: 1.2rem 5rem;
	}

	.Complete .Lead1_1 {
	text-align: center;
	}
	
	.Complete .Lead1_1 p {
	margin-top: 3rem;
	}
	
	.Caution_Txt {
	margin-top: 3rem;
	text-align: center;
	}

	.PageContact .NameUnit p {
	display: flex;
	}

	.PageContact .NameUnit input:first-child {
	margin-right: 1rem;
	}

	.PageContact .RadioCheckboxUnit p:first-child {
	margin-bottom: 1rem;
	}
	
	.PageContact .Footer_CreditIn,
	.PageExihibit .Footer_CreditIn {
	display: flex;
	}
	
	.PageContact .Footer_CreditIn .Footer_Logo2, 
	.PageExihibit .Footer_CreditIn .Footer_Logo2 {
	margin-left: 5rem;
	}
	
	.PageContact .FooterContact #FooterUnit,
	.PageExihibit .FooterContact #FooterUnit {
	padding-top: 4rem;
	justify-content: center;
	}
	
/*
	.PageContact .FooterContact #FooterUnit {
	justify-content: center;
	}
*/

	.PageContact .Footer_Copyright, 
	.PageExihibit .Footer_Copyright {
	margin-top: 3rem;
	text-align: center;
	}

	.info_content_area textarea {
	height: 10rem !important;
	}

}



/*
.FlowList {
position: relative;
display: flex;
justify-content: space-between;
}

.FlowList .Number1,
.FlowList .Number2,
.FlowList .Number3 {
position: relative;
}

.FlowList li.Current,
.FlowList li.Done {
color: var(--color-main);
}

	.PageContact .Caution {
	color: #df0707;
	}

@media only screen and (max-width: 767px) {
	
	.FlowList {
	margin-top: 3rem;
	}

	.FlowList li {
	width: 4rem;
	text-align: center;
	font-size: 1rem;
	letter-spacing: 0.1em;
	color: #c5c5c5;
	}

	.FlowList:before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 2rem;
	left: 0;
	width: 100%;
	height: 2px;
	background-image: url(../img/contact/DotLine_SP.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number1:before {
	content: '';
	display: inline-block;
	width: 4rem;
	height: 4rem;
	margin-bottom: 1rem;
	background-image: url(../img/contact/Num1.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number2:before {
	content: '';
	display: inline-block;
	width: 4rem;
	height: 4rem;
	margin-bottom: 1rem;
	background-image: url(../img/contact/Num2.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number3:before {
	content: '';
	display: inline-block;
	width: 4rem;
	height: 4rem;
	margin-bottom: 1rem;
	background-image: url(../img/contact/Num3.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number2.Current:before,
	.FlowList .Number2.Done:before {
	content: '';
	display: inline-block;
	width: 4rem;
	height: 4rem;
	margin-bottom: 1rem;
	background-image: url(../img/contact/Num2_Current.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number3.Current:before {
	content: '';
	display: inline-block;
	width: 4rem;
	height: 4rem;
	margin-bottom: 1rem;
	background-image: url(../img/contact/Num3_Current.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList li span {
	    display: block;
    text-align: center;
    width: 10rem;
    margin-left: -3rem;
	}
	
	.PageContact .Complete .LeadMain {
	margin-top: 5rem;
	font-size: 1.6rem;
	line-height: 1.8;
	}
	
	.PageContact .Complete .BackBtnUnit1 {
	margin-top: 3rem;
	padding-top: 3rem;
	border-top: 1px solid #ddd;
	text-align: center;
	width: 100%;
	}

	.PageContact .NameUnit input:last-child {
	margin-top: 1rem;
	}

}


@media print, screen and (min-width: 768px) {

	.FlowList {
	width: 57rem;
	margin-top: 10rem;
	margin-left: auto;
	margin-right: auto;
	}

	.FlowList li {
	position: relative;
	width: 12rem;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.2;
	color: #c5c5c5;
	}
		
	.FlowList .Number1:after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 2.5rem;
	left: 0;
	width: 35px;
	height: 15px;
	background-color: #fff;
	vertical-align: middle;	
	}

	.FlowList .Number3:after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 2.5rem;
	right: 0;
	width: 35px;
	height: 15px;
	background-color: #fff;
	vertical-align: middle;	
	}

	.FlowList:before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 2.5rem;
	left: 0;
	width: 100%;
	height: 2px;
	background-image: url(../img/contact/DotLine_PC.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number1:before {
	content: '';
	display: inline-block;
	width: 5rem;
	height: 5rem;
	margin-bottom: 2rem;
	background-image: url(../img/contact/Num1.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number2:before {
	content: '';
	display: inline-block;
	width: 5rem;
	height: 5rem;
	margin-bottom: 2rem;
	background-image: url(../img/contact/Num2.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number3:before {
	content: '';
	display: inline-block;
	width: 5rem;
	height: 5rem;
	margin-bottom: 2rem;
	background-image: url(../img/contact/Num3.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number2.Current:before,
	.FlowList .Number2.Done:before {
	content: '';
	display: inline-block;
	width: 5rem;
	height: 5rem;
	margin-bottom: 2rem;
	background-image: url(../img/contact/Num2_Current.png);
	background-size: contain;
	vertical-align: middle;
	}

	.FlowList .Number3.Current:before {
	content: '';
	display: inline-block;
	width: 5rem;
	height: 5rem;
	margin-bottom: 2rem;
	background-image: url(../img/contact/Num3_Current.png);
	background-size: contain;
	vertical-align: middle;
	}
	
	.PageContact .Complete .LeadMain {
	margin-top: 5rem;
	font-size: 1.8rem;
	line-height: 1.8;
	}
	
	.PageContact .Complete .BackBtnUnit1 {
	margin-top: 5rem;
	padding-top: 3rem;
	border-top: 1px solid #ddd;
	text-align: center;
	}

	.PageContact .NameUnit p {
	display: flex;
	}

	.PageContact .NameUnit input:first-child {
	margin-right: 1rem;
	}

}
*/




/* ■ 出展のご案内 ==================================================================================== */


.PageGuide .UnitTitle1 {
color: #fff;
background: #3ea76f;
}

.PageGuide .UnitTitle2 {
color: #fff;
background: #7db113;
}

.PageGuide .UnitTitle3 {
color: #fff;
background: #f28200;
}

.PageGuide .UnitTitle4 {
color: #fff;
background: #23abaf;
}

.PageGuide .UnitTitle5 {
color: #fff;
background: #91336b;
}

.PageGuide .UnitTitle6 {
color: #fff;
background: #f99900;
}

.PageGuide .SectionAddress {
margin-bottom: 0 !important;
}

@media only screen and (max-width: 767px) {

	.PageGuide .SectionUnit {
	margin-bottom: 4rem;
	}

	.PageGuide .SectionUnitIn {
	margin-top: 3rem;
	margin-bottom: 5rem;
	}

	.PageGuide .MainLead {
	margin-top: 2rem;
	font-size: 1.6rem;
	line-height: 1.6;
	letter-spacing: 0.08em;
	}

	.PageGuide .UnitWrap {
	margin-top: 3rem;
	}

	.PageGuide .UnitWrap .UnitTitle {
	margin-bottom: 2rem;
	padding: 2rem;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: 0.08em;
	text-align: center;
	}

	.PageGuide .UnitWrap .Unit {
	margin-bottom: 2rem;
	padding: 2rem;
	border: 1px solid #dddddd;
	}

	.PageGuide .UnitWrap .Unit .MdsUnit {
	text-align: center;
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.6;
	}

	.PageGuide .UnitWrap .Unit .Logo {
	margin: 3rem auto 0 auto;
	width: 8rem;
	}
	
	.PageGuide .UnitWrap .Unit .Lead1 {
	margin-top: 3rem;
	font-size: 1.4rem;
	}
		
	.PageGuide .HowToUnit {
	margin-bottom: 3rem;
	}

	.PageGuide .HowToUnit .LeadMds {
	margin-bottom: 1.5rem;
	font-weight: 600;
	font-size: 1.6rem;
    line-height: 1.6;
	}
	
	.PageGuide .HowToUnit .Alerat {
	margin-top: 2rem;
	padding: 1.5rem 0;
	background: #ffeded;
	color: #b31212;
	font-weight: 600;
	font-size: 1.6rem;
	text-align: center;
	}

	.PageGuide .HowToUnit .BtnTo a {
	width: 100%;
	}

	.PageGuide .HowToUnit .BtnTo {
	margin-top: 2rem;
	}
	
	.PageGuide .PhotoUnit {

	width: 100%;
	margin-bottom: 5rem;
	}

	.PageGuide .Photo {

	}

	.PageGuide .HowToUnitIn .Ph {
	margin-top: 2rem;
	text-align: center;
	}

	.PageGuide .HowToUnitIn .Ph img {
	width: 20rem;
	margin: auto;
	}

}

@media print, screen and (min-width: 768px) {

	.PageGuide .SectionUnit {
	margin-bottom: 8rem;
	}
	
	.PageGuide .SectionUnitIn {
	margin-top: 3rem;
	margin-bottom: 8rem;
	}

	.PageGuide .MainLead {
	margin-top: 3rem;
	font-size: 2rem;
	letter-spacing: 0.08em;
	}

	.PageGuide .UnitWrapIn {
	display: grid;
	gap: 3rem;
	grid-template-columns: repeat(2, 1fr);
	margin-bottom: 6rem;
	}

	.PageGuide .UnitWrap {
	margin-top: 5rem;
	}

	.PageGuide .UnitWrap .UnitTitle {
	margin-bottom: 2rem;
	padding: 2rem;
	text-align: center;
	font-size: 2rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	}

	.PageGuide .UnitWrap .Unit {
	padding: 3rem;
	border: 1px solid #dddddd;
	}

	.PageGuide .UnitWrap .Unit .MdsUnit {
	text-align: center;
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.6;
	}

	.PageGuide .UnitWrap .Unit .Logo {
	margin: 3rem auto 0 auto;
	width: 8rem;
	text-align: center;
	}
	
	.PageGuide .UnitWrap .Unit .Lead1 {
	margin-top: 3rem;
	font-size: 1.4rem;
	text-align: center;
	}
	
	.PageGuide .HowToUnit {
	margin-bottom: 5rem;
	}

	.PageGuide .HowToUnit .LeadMds {
	margin-bottom: 1.5rem;
	font-weight: 600;
	font-size: 1.8rem;
    line-height: 1.6;
	}

	.PageGuide .HowToUnit .Alerat {
	display: inline-block;
	margin-top: 2rem;
	padding: 1.5rem 3rem;
	background: #ffeded;
	color: #b31212;
	font-weight: 600;
	font-size: 1.8rem;	
	}

	.PageGuide .HowToUnit .BtnTo a {
	width: 30rem;
	}

	.PageGuide .HowToUnit .BtnTo {
	margin-top: 2rem;
	}
	
	.PageGuide .PhotoUnit {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 5rem;
	}

	.PageGuide .Photo {
	width: calc(100% / 2);
	}

	.PageGuide .HowToUnitIn .Ph {
	margin-top: 2rem;
	width: 23rem;
	}
	


}



/* ■ 出展のご案内 ==================================================================================== */




@media only screen and (max-width: 767px) {

	.PagePresentation .LeadUnitWrap {
	display: flex;
	flex-flow: column;
	}

	.PagePresentation .LeadUnitWrap .Ph {
	order: 1;
	}
	
	.PagePresentation .SectionUnitIn {

	margin-bottom: 5rem;
	}

	.PagePresentation .LeadUnitWrap .LeadUnit {
	order: 2;
	margin-top: 2rem;
	}

	.PagePresentation .LeadUnitWrap .LeadUnit .BtnTo {
	margin-top: 3rem;
	}

	.PagePresentation .LeadUnitWrap .LeadUnit .BtnTo .BtnM {
	width: 100%;
	}
	
	.M20 {
	margin-top: 2rem !important;
	}

}

@media print, screen and (min-width: 768px) {

	.PagePresentation .LeadUnitWrap {
	display: flex;
	}

	.PagePresentation .LeadUnitWrap .Ph {
	width: 40%;
	}
	
	.PagePresentation .SectionUnitIn {
	margin-bottom: 8rem;
	}

	.PagePresentation .LeadUnitWrap .LeadUnit {
	width: 60%;
	padding-right: 4rem;
	}

	.PagePresentation .LeadUnitWrap .LeadUnit .BtnTo {
	margin-top: 3rem;
	}

	.PagePresentation .LeadUnitWrap .LeadUnit .BtnTo .BtnM {
	width: 30rem;
	}
	
	.M20 {
	margin-top: 2rem !important;
	}

}


/* ■ 出展者検索・一覧 ==================================================================================== */

.PageSearch .SectionAddress {
margin-top: 0 !important;
}

.SearchBtn {
position: relative;
background: #000;
color: #fff;
border-radius: 50px;
}

.SearchBtn:before {
content: '';
display: inline-block;
position: absolute;
top: 1rem;
right: 1.4rem;
width: 1.6rem;
height: 1.6rem;
background-image: url(/img/common/icon/Icon_Loupe_W.png);
background-size: contain;
vertical-align: middle;
background-repeat: no-repeat;
}

@media only screen and (max-width: 767px) {

	.PageSearch .SectionUnit {
	margin-top:3rem;
	}
	
	.PageSearch .FormUnit {
	margin-top: 3rem;	
	}
	
	.PageSearch .FormUnitIn {
	margin-top: 3rem;
	}
	
	.PageSearch .FormUnitIn .SearchBtn {
	display: flex;
	justify-content: center;
	width: 20rem;
	margin: 2rem auto 0 auto;
	padding: 1.2rem 6rem 1.2rem 4rem;
	font-size: 1.8rem;
	}

	.PageSearch .FormUnitIn .SearchBtn2 {
	display: flex;
	justify-content: center;
	width: 20rem;
	margin: 2rem auto 0 auto;
	padding: 1.2rem 6rem 1.2rem 4rem;
	font-size: 1.8rem;
	}

	.PageSearch .FormUnitIn .SearchBtn2:before {
	top: 33%;
    right: 3.4rem;
    width: 2rem;
    height: 2rem;
	}
	
	.PageSearch .FormUnitIn .SearchBox {
	width: 100%;
	}
	
	.PageSearch .SearchUnit {
	margin-bottom: 3rem;
	padding: 2rem;
	 border: 1px solid #dddddd;
	}

	.PageSearch .SearchMds {
	position: relative;
	margin-top: 3rem;
	margin-left: -1rem;
	padding-left: 3rem;
	font-size: 1.8rem;
	letter-spacing: 0.08em;
	text-align: center;
	}

	.PageSearch .SearchMds:before {
	content: '';
	display: inline-block;
	width: 1.4rem;
	height: 1.4rem;
	margin-right: 0.5rem;
	background: var(--color-main);
	}
	
	.PageSearch .FormUnit input[type=checkbox] + label::before {
	width: 1.8rem;
	height: 1.8rem;
	top: -0.3rem;
	}
	
	.PageSearch .SearchUnitList li {
	margin-top: 2rem;
	font-size: 1.3rem;
	}
	
	.PageSearch .SearchLogo {
	width: 11rem;
	margin: auto;
	}

	.Search_KanaList {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 4rem;
	}
	
	.Search_KanaList li a {
	display: block;
	margin-right: 0.5rem;
	margin-bottom: 0.5rem;
	padding: 1rem;
	border: 1px solid #e5e5e5;
	}
	
	.SectionUnit_Kana {
	margin-bottom: 5rem;
	}
	
	.SectionUnit_Kana .UnitS {
	border: none;
	}
	
	.SectionUnit_Kana .Ph {
	width: 3rem;
	margin: 0 auto 0.5rem auto;
	}

	.SectionUnit_Kana tr {
	border-left: 1px solid #e5e5e5;
	border-bottom: 1px solid #e5e5e5;
	}

	.SectionUnit_Kana td {
	font-size: 1.3rem;
	}


}

@media print, screen and (min-width: 768px) {

	.PageSearch .SectionUnit {
	margin-top: 5rem;
	}
	
	.PageSearch .FormUnit {
	margin-top: 5rem;	
	}
	
	.PageSearch .FormUnitIn {
	margin-top: 5rem;
	}
	
	.PageSearch .FormUnitIn .SearchBtn {
	margin-left: 1rem;
	padding: 0.6rem 4rem 0.6rem 2rem;
	}

	.PageSearch .FormUnitIn .SearchBtn2 {
	display: flex;
	justify-content: center;
	width: 20rem;
	margin: 5rem auto 0 auto;
	padding: 1.2rem 6rem 1.2rem 4rem;
	font-size: 2.2rem;
	}

	.PageSearch .FormUnitIn .SearchBtn2:before {
	top: 33%;
    right: 3.4rem;
    width: 2rem;
    height: 2rem;
	}
	
	.PageSearch .FormUnitIn .SearchBox {
	width: 40rem;
	}
	
	.PageSearch .SearchUnit {
	margin-bottom: 3rem;
	padding: 3rem;
	 border: 1px solid #dddddd;
	}

	.PageSearch .SearchMds {
	position: relative;
	margin-bottom: 1rem;
	padding-left: 3rem;
	font-size: 2rem;
	letter-spacing: 0.08em;
	}

	.PageSearch .SearchMds:before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 0.5rem;
	left: 0;
	width: 1.6rem;
	height: 1.6rem;
	background: var(--color-main);
	}
	
	.PageSearch .SearchUnitList {
	display: flex;
	flex-wrap: wrap;
	}
	
	.PageSearch .SearchUnitList li {
	margin-top: 2rem;
	width: calc(100% / 3);
	}
	
	.PageSearch .SearchLogo {
	width: 12rem;
	margin: auto;
	}
	
	.Search_KanaList {
	display: flex;
	margin-bottom: 4rem;
	}
	
	.Search_KanaList li a {
	display: block;
	margin-right: 0.5rem;
	padding: 1rem;
	border: 1px solid #e5e5e5;
	}
	
	.SectionUnit_Kana {
	margin-bottom: 5rem;
	}
	
	.SectionUnit_Kana .UnitS {
	display: flex;
	align-items: center;
	border: none;
	border-left: 1px solid #e5e5e5;
	border-bottom: 1px solid #e5e5e5;
	}
	
	.SectionUnit_Kana .Ph {
	margin-right: 2rem;
	width: 8rem;
	}

}



/* ■ ダウンロード ==================================================================================== */

.PageDownLoad ul.dl_wrap{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.PageDownLoad li.dl_box{
  width: 48%;
  max-width: 550px;
  text-align: left;
}
.PageDownLoad li.dl_box p{
  margin-bottom: 20px;
  padding-bottom: 12px;
  border-bottom: 1px solid #D1D1D1;
}
.PageDownLoad .dl_btn a{
  display: flex;
  align-items: center;
  height: 60px;
  padding: 0 4em 0 4em;
  color: #333;
  font-weight: bold;
  background-color: #EDEDED;
  position: relative;
}
.PageDownLoad .dl_btn a:hover{ opacity: 0.7; }
.PageDownLoad .dl_btn a span.new{
  padding: 0.3em;
  background-color: #f00;
  color: #fff;
  position: absolute;
  top: calc((100% - 1.5em) / 2);
  left: 15px;
  font-size: 11px;
}
.PageDownLoad .dl_btn a::after{
  content: "";
  width: 25px;
  height: 25px;
  background: url(../../img/common/icon/pdf.svg) no-repeat center center;
  background-size: contain;
  position: absolute;
  top: calc((100% - 25px) / 2);
  right: 15px;
}

@media screen and (max-width: 767px){

  .PageDownLoad ul{ display: block; }
  .PageDownLoad li.dl_box{
    width: 100%;
    max-width: unset;
    margin-bottom: 1.5em;
  }
  .PageDownLoad li.dl_box p{
    margin-bottom: 1.43em;
    padding-bottom: 0.857em;
    text-align: center;
  }
/*
  .download .download_wrapper li.dl_box p img{
    width: 90%;
    height: auto;
  }
  .download .download_wrapper .dl_btn a{
    height: 4.3em;
    padding: 0 4em 0 4.5em;
  }
  .download .download_wrapper .dl_btn a:hover{ opacity: 1.0; }
  .download .download_wrapper .dl_btn a span.new{
    font-size: 11px;
    left: 1.43em;
  }
  .download .download_wrapper .dl_btn a::after{
    width: 1.93em;
    height: 1.93em;
    top: calc((100% - 1.93em) / 2);
    right: 1.25em;
  }
*/
}

/*
@media screen and (min-width: 768px){
  .english.download .download_wrapper ul{ display: block; }
  .english.download .download_wrapper li.dl_box{
    width: 100%;
    max-width: unset;
    margin-bottom: 40px;
    display: flex;
    justify-content: space-between;
  }
  .english.download .download_wrapper li.dl_box p{
    width: 13%;
    margin: 0 3em 0 0;
    padding-bottom: 0;
    text-align: center;
    border-bottom: none;
  }
  .english.download .download_wrapper li.dl_box p img{
    width: auto;
    height: 100%;
  }
  .english.download .download_wrapper .dl_btn{ width: calc(100% - (13% + 3em)); }
}
*/



@media only screen and (max-width: 767px) {

	.PageDownLoad .MainLead {
	margin-bottom: 3rem;
	font-size: 1.6rem;
	line-height: 1.6;
	letter-spacing: 0.08em;
	}

	.PageDownLoad .UnitWrap .Unit {
	margin-bottom: 2rem;
    padding: 2rem;
    border: 1px solid #dddddd;
	}

	.PageDownLoad .UnitWrap .BtnTo {
	margin-top: 3rem;
	text-align: center;
	}

	.PageDownLoad .UnitWrap .BtnTo a {
	width: 100%;
	}

	.PageDownLoad .UnitWrap .UnitLogo {
	text-align: center;	
	}
	
	.PageDownLoad .UnitWrap .UnitLogo img {
	margin: auto;
	width: 80%;
	}
    
}

@media print, screen and (min-width: 768px) {

	.PageDownLoad .MainLead {
	font-size: 1.8rem;
	letter-spacing: 0.08em;
	}

	.PageDownLoad .UnitWrap {
    margin-top: 5rem;
	display: grid;
    gap: 3rem;
    grid-template-columns: repeat(2, 1fr);
	}

	.PageDownLoad .UnitWrap .Unit {
    padding: 3rem;
    border: 1px solid #dddddd;
	}

	.PageDownLoad .UnitWrap .BtnTo {
	margin-top: 3rem;
	text-align: center;
	}

	.PageDownLoad .UnitWrap .BtnTo a {
	width: 30rem;
	}

	.PageDownLoad .UnitWrap .UnitLogo {
	text-align: center;	
	}
	
	.PageDownLoad .UnitWrap .UnitLogo img {
	margin: auto;
	width: 80%;
	}

}



/* ### --------------------------------------------------- */

.TopContentsWrap {
position: relative;
z-index: 10;
background-color: #fff;
}

@media only screen and (max-width: 767px) {

	#ContentsTop {

	}

}

@media print, screen and (min-width: 768px) {

	#ContentsTop {

	}

}




/* ■ 汎用パーツ ==================================================================================== */

/*
カラム
記述リスト
ボタン
検索窓
*/


/* カラム --------------------------------------------------- */

#col1 .ColItem,
#col2 .ColItem {
padding: 2rem;
border: 1px solid var(--color-sub4);
line-height: 1.8;
}


/* 記述リスト --------------------------------------------------- */

#dlh .DLHori dl {
border-bottom: 1px solid #e5e5e5;
}

@media only screen and (max-width: 767px) {

	#dlh .DLHori {
	margin-top: 2rem;
	}

	#dlh .DLHori dl {
	padding: 1.5rem 0;
	}

	#dlv .DLVert dl {
	padding: 1rem 0;
	}
	
	.Lg_SelectList2 {
	font-size: 1.4rem;
	color: #fff;
	}
	
	.Lg_Select2 {
	position: relative;
	}

	.Lg_SelectList {
	font-size: 13px;
	border-radius: 4px;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background: transparent;
	}
	
	.Lg_Select2::after {
	content: "";
	}
	
	.select-arrow2 {
	position: absolute;
	pointer-events: none;
	right: 1rem;
    top: 50%;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-left: 3px solid transparent;
	border-right: 3px solid transparent;
	border-top: 4px solid var(--color-main); /* ▼の色 */
	}


	.PageContact .PrivacyUnit {
	margin-top: 2rem;
	}

	.PageContact .PrivacyLead {
	font-size: 1.4rem;
	letter-spacing: 0.08em;
	line-height: 1.6;
	}
	
	.PageContact .PrivacyLead a {
	color: var(--color-main);
	}
	
	.PageContact .PrivacyLead2 {
	margin-top: 2rem;
	}

}

@media print, screen and (min-width: 768px) {


	#dlh .DLHori {
	border-top: 1px solid #e5e5e5;
	}

	#dlh .DLHori dl {
	padding: 2rem 0;
	align-items: center;
	}

	#dlv .DLHori dt {
	padding: 0 0 0 1.5rem;
	}

	#dlv .DLHori dd {
	padding: 0 0 0 1.5rem;	
	}

	.Lg_SelectList2 {
/* 	border-left: 1px solid #e1ded8; */
	font-size: 1.4rem !important;
	letter-spacing: 0.08em;
	}
	
	.Lg_Select2 {
	position: relative;
	}

	.Lg_Select2 {
	position: relative;
	display: inline-block;
	}
	
	.Lg_SelectList2 {
	padding-right: 0.5em; /* 矢印分の余白 */
	font-size: 16px;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-color: transparent;
	color: #fff;
	}
	
	.Lg_Select2::after {
	content: "";
	}
	
	.select-arrow2 {
	position: absolute;
	pointer-events: none;
	right: 1rem;
	top: 20px;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-left: 3px solid transparent;
	border-right: 3px solid transparent;
	border-top: 4px solid var(--color-main); /* ▼の色 */
	}

	
	.PageContact .PrivacyUnit {
	margin-top: 2rem;
	margin-left: 26rem;
	padding-left: 3rem;
	}

	.PageContact .PrivacyLead {
	font-size: 1.4rem;
	letter-spacing: 0.08em;
	}
	
	.PageContact .PrivacyLead a {
	color: var(--color-main);
	}
	
	.PageContact .PrivacyLead2 {
	margin-top: 2rem;
	}

	
	.form-group.form-name {
	display: inline;
	}


}


/* 記述リスト --------------------------------------------------- */


@media only screen and (max-width: 767px) {



}

@media print, screen and (min-width: 768px) {



}



/* ボタン --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	#btn .Note {
	display: block;
	font-size: 1.4rem;
	}

}

@media print, screen and (min-width: 768px) {

}


/* 検索窓 --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	.SearchBox {

	}

}

@media print, screen and (min-width: 768px) {

	.SearchBox {

	}

}



/* ■ 汎用ライブラリ1 ==================================================================================== */

/*
モーダル1
タブメニュー
ソートメニュー
*/


/* モーダル1 --------------------------------------------------- */

.SampleFullScreen {
display: none;
}

.SampleFullScreen_In {
padding-top: 3rem;
padding-bottom: 3rem;
}


/* タブメニュー --------------------------------------------------- */

.TabContent {
display: none;
}

.TabContent.Current {
display: block;
}

/* タブ */
.TabMenuList ul {
display: flex;
justify-content: space-between;
margin-top: var(--gap-int);
border-bottom: 4px solid var(--color-main);
}

.TabMenuList li {
width: calc((100% / 2) - 0.5rem );
}

.TabMenuList a {
display: block;
color: #fff;
text-align: center;
background: #000;
}

.TabMenuList a.Current {
color: #fff;
background-color: var(--color-main);
}

/* コンテンツ */
.TabContentsList {
margin-top: var(--gap-int);
}

@media only screen and (max-width: 767px) {

	/* タブ */
	.TabMenuList a {
	padding: 1.25rem 1rem;
	}

}

@media print, screen and (min-width: 768px) {

	/* タブ */
	.TabMenuList a {
	padding: 2.5rem 1rem;
	font-size: 2.2rem;
	}
	
	.TabMenuList a:hover {
	opacity: 1;

	color: #000;
	background: #eee;
	}

}


/* ソートメニュー --------------------------------------------------- */

/* タグ */
.SortMenuList {
display: flex;
flex-wrap: wrap;
margin-top: var(--gap-int);
}

.SortMenuList li {
margin-right: 0.5rem;
margin-bottom: 0.5rem;
}

.SortMenuList a {
display: block;
border: 1px solid var(--color-sub4);
border-radius: 100vh;
color: #000;
}

.SortMenuList a.Current {
background-color: var(--color-sub5);
}

/* コンテンツ */
.SortContentsList {
margin-top: var(--gap-int);
}

.SortContentsList li {
border: 1px solid var(--color-sub4);
}

@media only screen and (max-width: 767px) {

	/* タブ */
	.SortMenuList a {
	padding: 1rem 2rem;
	}

	/* コンテンツ */
	.SortContentsList li {
	padding: 1.5rem 1.5rem;
	line-height: 1.6;
	}

}

@media print, screen and (min-width: 768px) {

	/* タブ */
	.SortMenuList a {
	padding: 1rem 2rem;
	}

	/* コンテンツ */
	.SortContentsList li {
	padding: 2rem 2rem;
	line-height: 1.8;
	}

}



/* ■ JSライブラリ ==================================================================================== */

/*
slick
Modaal
*/


/* slick カスタマイズ --------------------------------------------------- */

/* 読み込み時のレイアウトずれ対策 */
.Slider > li:not(:first-child) {
display: none;
}

/* 前後ボタン */
.slick-prev,
.slick-next {
display: flex;
justify-content: center;
align-items: center;
position: absolute;
z-index: 10;
border-radius: 100vh;
text-indent: -9999px;
background-color: rgba(0,0,0,0.5);
cursor: pointer;
}

.slick-prev-arrow,
.slick-next-arrow {
display: block;
border-color: #fff;
border-top-style: solid;
border-right-style: solid;
}

.slick-prev-arrow {
transform: rotate(225deg);
}

.slick-next-arrow {
transform: rotate(45deg);
}

.slick-disabled {
opacity: 0.2;
cursor: default;
}

/* ページネーション */
.slick-dots {
display: block;
position: absolute;
width: 100%;
text-align: center;
}

.slick-dots li {
display: inline-block;
position: relative;
border: 1px solid #c7c7c7;
border-radius: 100vh;
text-indent: -9999px;
cursor: pointer;
}

@media only screen and (max-width: 767px) {

	.Slider {
	margin-top: var(--gap-int);
	margin-bottom: 6rem;
	}

	/* スライド間の余白：centerModeを使用する場合 */
	.Slider .slick-slide {
	margin: 0 0.2rem;
	}

	/* 前後ボタン */
	.slick-prev,
	.slick-next {
	bottom: -4rem;
	width: 3rem;
	height: 3rem;
	margin-top: -1.5rem;
	}

	.slick-prev {
	left: 0;
	padding-left: 0.5rem;
	}

	.slick-next {
	right: 0;
	padding-right: 0.5rem;
	}

	.slick-prev-arrow,
	.slick-next-arrow {
	width: 1rem;
	height: 1rem;
	border-top-width: 1px;
	border-right-width: 1px;
	}

	/* ページネーション */
	.slick-dots {
	bottom: -3.75rem;
	}

	.slick-dots li {
	width: 1rem;
	height: 1rem;
	margin: 0 0.5rem;
	}

	.slick-dots .slick-active {
	background-color: #c7c7c7;
	}

}

@media print, screen and (min-width: 768px) {

	.Slider {
	margin-top: var(--gap-int);
	}

	/* 前後ボタン */
	.slick-prev,
	.slick-next {
	top: 50%;
	width: 6rem;
	height: 6rem;
	margin-top: -3rem;
	}

	.slick-prev {
	left: 2rem;
	padding-left: 1rem;
	}

	.slick-next {
	right: 2rem;
	padding-right: 1rem;
	}

	.slick-prev-arrow,
	.slick-next-arrow {
	width: 2rem;
	height: 2rem;
	border-top-width: 2px;
	border-right-width: 2px;
	}

	/* ページネーション */
	.slick-dots {
	bottom: 2rem;
	}

	.slick-dots li {
	width: 1rem;
	height: 1rem;
	margin: 0 0.5rem;
	}

	.slick-dots .slick-active {
	background-color: #fff;
	}

}


/* Modaal カスタマイズ --------------------------------------------------- */

/*
種類別class名
modaal-inline, modaal-image, modaal-video, modaal-ajax, modaal-confirm, modaal-iframe
modaal-fullscreen
*/

/* オーバーレイ */
.modaal-overlay {
z-index: 10000;
background-color: rgba(0,0,0,0.6) !important;
}

/* モーダル全体の囲み */
.modaal-wrapper {
z-index: 10001;
}

/* 画像：横幅 */
.modaal-image .modaal-container,
.modaal-image .modaal-container img {
max-width: 100rem !important;
}

/* 動画：横幅 */
.modaal-video-wrap {
max-width: 100rem;
margin: 0 auto;
}

/* 動画：調整（display: tableによる不要な上下の余白を解消） */
.modaal-video .modaal-outer-wrapper {
display: flex;
align-items: center;
}

.modaal-video .modaal-inner-wrapper {
height: auto;
}

/* 動画：調整（左右の背景を押しても閉じないバグを解消） */
.modaal-video-container {
max-width: 100%;
padding-top: 56.25%;
padding-bottom: 0;
}

/* 閉じるボタン */
.modaal-close {
background-color: #fff !important;
}

.modaal-fullscreen .modaal-close {
background-color: #000 !important;
}

.modaal-close::before,
.modaal-close::after,
.modaal-close:focus::before,
.modaal-close:focus::after,
.modaal-close:hover::before,
.modaal-close:hover::after {
background-color: #000 !important;
}

.modaal-fullscreen .modaal-close::before,
.modaal-fullscreen .modaal-close::after,
.modaal-fullscreen .modaal-close:focus::before,
.modaal-fullscreen .modaal-close:focus::after,
.modaal-fullscreen .modaal-close:hover::before,
.modaal-fullscreen .modaal-close:hover::after {
background-color: #fff !important;
}

@media only screen and (max-width: 767px) {

	/* コンテンツ領域のpadding */
	.modaal-content-container {
	padding: 2rem;
	}

	/* inlineとAjaxの高さ */
	.modaal-inline:not(.modaal-fullscreen) .modaal-content-container,
	.modaal-ajax .modaal-content-container {
	height: 50rem;
	overflow: scroll;
	}

}

@media print, screen and (min-width: 768px) {

	/* inlineとAjaxの横幅と高さ */
	.modaal-inline:not(.modaal-fullscreen) .modaal-content-container,
	.modaal-ajax:not(.modaal-fullscreen) .modaal-content-container {
	max-width: 100rem;
	height: 60rem;
	overflow: scroll;
	}

}

@media print, screen and (max-height: 700px) {

	/* inlineとAjaxの横幅と高さ */
	.modaal-inline:not(.modaal-fullscreen) .modaal-content-container,
	.modaal-ajax:not(.modaal-fullscreen) .modaal-content-container {
	height: 50rem;
	}

}
