@charset "UTF-8";

/*----------------------------------------------------------*/
/* カスタマイズ用CSS
/*----------------------------------------------------------*/
:root {
	--main: #284977;
	--sub: #93A4BB;
	--base: #eee;
	--text: #414141;
	--link: #284977;
	--ease: all 0.3s ease;
	--ease-out: cubic-bezier(0.30, 1.00, 0.30, 1.00);
	--ease-in: cubic-bezier(0.75, 0.05, 0.9, 0.05);
	--ease-inout: cubic-bezier(0.85, 0.00, 0.07, 1.00);
	--font-jp: YakuHanJP_Noto, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	--font-jp2: YakuHanMP, 'Zen Old Mincho', serif;
	--font-en: 'Cormorant Garamond', serif;
}
*{
    margin: 0;
    padding: 0;
}
html{
	box-sizing:border-box;
	line-height:1;
	font-size: 62.5%; /*  50 56.25 62.5 68.75 75*/
	background: #fff;
}
/*html {
	visibility: hidden;
}
html.wf-active {
	visibility: visible;
}*/
body {
	font-family: var(--font-jp);
	font-style: normal;
	font-weight: lighter;
    -webkit-text-size-adjust: 100%;
    font-feature-settings: "palt" 1;
    overflow-x: hidden;
    counter-reset: count;
    animation: fadeIn 2.5s ease 0s 1 normal;
    letter-spacing: .05em;
	color: var(--text);
	background: #fff;
}

/*構成*/
#all_wrap {
	width: calc(100%);
	padding: 0;
	margin: 0;
	position: relative;
}
.mainContainer {
	position: relative;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	min-height: 100vh;
}
.widget {
	padding: 0;
	margin: 0;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*構成*/
	#all_wrap {
		width: calc(100%);
		padding: 50px 0 0;
		margin: 0 auto;
		position: relative;
	}
	#all_wrap.sub_page {
		padding-top: 50px;
	}
	#all_wrap.lp_page {
		padding-top: 0;
	}
	.mainContainer {
		position: relative;
		border-left: none;
		border-right: none;
		min-height: unset;
	}
	#mainContent {
		width: 100%;
		padding: 0;
		margin: 0;
	}
	#contentWrapper {
		width: calc(100%);
		padding: 0;
		margin: 0 auto;
		position: relative;
	}
	.l-footer {
		width: calc(100%);
		padding: 0;
		margin: 0 auto;
		position: relative;
	}
	
	.widget {
		margin-bottom: 0;
	}
}


#all_wrap .content a { color: var(--main); font-weight: 300; transition: ease 0.2s; }
#all_wrap .content a:hover { color: var(--main); font-weight: 300; text-decoration: underline; transition: ease 0.2s; }
#all_wrap .single_content img { width: 100%; height: auto; padding: 0; margin: 0 auto; }

#all_wrap .content a.wp-block-button__link {
    display: block;
    width: 50%;
    color: #fff;
    transition: ease 0.2s;
    position: relative;
    padding: 10px 20px;
    margin: 0 auto;
}
#all_wrap .content a.wp-block-button__link:hover { text-decoration: none; opacity: 0.8; transition: ease 0.2s; }
#all_wrap .content a.wp-block-button__link::after {
    content: '';
    display: block;
    width: 5px;
    height: 5px;
    background: none;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translate(0,-50%) rotate(-45deg);
    -webkit-transform: translate(0,-50%) rotate(-45deg);
    transition: ease 0.2s;
}
#all_wrap .content a.wp-block-button__link:hover::after {
    right: 18px;
    transition: ease 0.2s;
}

/* スクロールの幅の設定 */
html::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

/* スクロールの背景の設定 */
html::-webkit-scrollbar-track {
  border-radius: 0;
  box-shadow: 0 0 4px #fff inset;
}

/* スクロールのつまみ部分の設定 */
html::-webkit-scrollbar-thumb {
  border-radius: 0;
  background: #c8c8c8;
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

#all_wrap .single_content a { color: var(--text); font-weight: 300; transition: ease 0.2s; }
#all_wrap .single_content a:hover { color: #var(--text); font-weight: 300; text-decoration: underline; transition: ease 0.2s; }

.clear{
	clear: both;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#all_wrap { position: relative; overflow: hidden; }
    #all_wrap .content a.wp-block-button__link {
        display: block;
        width: 90%;
        color: #fff;
        transition: ease 0.2s;
        position: relative;
        padding: 10px 50px;
        margin: 0 auto;
    }
}

/*ページトップ*/
#to_top {
    width: 50px;
    height: auto;
    display: inline-flex;
	display: -webkit-inline-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
    padding: 40px 10px 30px;
    margin: 0;
	background: none;
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 999;
	font-family: var(--font-en);
	font-size: 14px;
	font-weight: 500;
	writing-mode: vertical-rl;
	color: var(--text);
	transition: all 0.3s ease;
	opacity: 0;
	visibility: hidden;
}
#to_top.fixed {
	transition: all 0.3s ease;
	opacity: 1;
	visibility: visible;
}
#to_top::before {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	padding: 0;
	margin: 0;
	background: none;
	border-top: 1px solid var(--text);
	border-right: 1px solid var(--text);
	position: absolute;
	top: 20px;
	left: 50%;
	right: unset;
	transform: translate(-50%,0) rotate(-45deg);
	-webkit-transform: translate(-50%,0)rotate(-45deg);
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*ページトップ*/
	#to_top {
		width: 40px;
		height: auto;
		display: inline-flex;
		display: -webkit-inline-flex;
		justify-content: center;
		align-content: center;
		align-items: center;
		padding: 35px 10px 15px;
		margin: 0;
		background: none;
		position: fixed;
		bottom: 60px;
		right: 0;
		z-index: 999;
		font-size: 14px;
		font-weight: 500;
		writing-mode: vertical-rl;
		color: var(--text);
		transition: all 0.3s ease;
		opacity: 0;
	}
	#to_top.mobile {
		transition: all 0.3s ease;
		opacity: 1;
	}
	#to_top::before {
		content: '';
		display: block;
		width: 10px;
		height: 10px;
		padding: 0;
		margin: 0;
		background: none;
		border-top: 1px solid var(--text);
		border-right: 1px solid var(--text);
		position: absolute;
		top: 20px;
		left: 50%;
		right: unset;
		transform: translate(-50%,0) rotate(-45deg);
		-webkit-transform: translate(-50%,0)rotate(-45deg);
	}
}

/*reCAPTCHA*/
.grecaptcha-badge {
	z-index: 999;
}

/************************************************************/
/*　アニメーション
/************************************************************/

/*全体徐々に表示*/
.fadein {
	animation: fadein 3s forwards;
}
@keyframes fadein {
	0% {opacity: 0}
	100% {opacity: 1}
}

/*フワッと表示*/
.anime.anime_fade {
	transition: 2.1s var(--ease-out);
	opacity: 0;
}
.anime.anime_fade.active {
	transition: 2.1s var(--ease-out);
	opacity: 1;
}

/*下からフワッと*/
.anime.anime_btm {
	transform: translate(0,50px);
	transition: 2.1s var(--ease-out);
	opacity: 0;
}
.anime.anime_btm.active {
	transform: translate(0,0);
	transition: 2.1s var(--ease-out);
	opacity: 1;
}

/*右からフワッと*/
.anime.anime_right {
	transform: translate(50px,0);
	transition: 2.1s var(--ease-out);
	opacity: 0;
}
.anime.anime_right.active {
	transform: translate(0,0);
	transition: 2.1s var(--ease-out);
	opacity: 1;
}

/*光る*/
@keyframes shine {
	0% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

/*画像*/
@keyframes swipeRight {
	0% {
		transform: translate(0);
	}
	50%, 60% {
		transform: translate3d(100%,0,0);
	}
	100% {
		transform: translate3d(100%,0,0);
	}
}

/************************************************************/
/*　共通
/************************************************************/

/*本文*/
#all_wrap .content {
    font-size: 15px;
    line-height: 2;
    padding: 0;
    margin: 0 auto 100px;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
    /*本文*/
    #all_wrap .content {
        font-size: 14px;
        line-height: 2;
        padding: 0;
        margin: 0 auto 50px;
    }
}

/************************************************************/
/*　コンテンツ整形
/************************************************************/
#all_wrap p {
    font-size: 15px;
    line-height: 2;
    font-weight: 300;
    font-feature-settings: "palt" 1;
    font-style: normal;
}
#all_wrap .content p {
    font-size: 15px;
    line-height: 2;
    padding: 0;
    margin: 0 auto 20px;
}
#all_wrap img.alignleft {
    margin-right: 30px;
    margin-bottom: 30px;
}
#all_wrap img.alignright {
    margin-left: 30px;
    margin-bottom: 30px;
}

/*カスタマイズ*/
#all_wrap .content div {
    margin-top: 0;
}
#all_wrap .content .wp-block-columns {
    margin-top: 0;
    align-content: flex-start;
    align-items: flex-start;
}
#all_wrap .content .wp-block-spacer {
    padding: 0;
    margin: 0;
}
#all_wrap .l-wrapper .postContents .content .wp-block-columns h3:first-of-type,
#all_wrap .l-wrapper .pageContents .content .wp-block-columns h3:first-of-type,
#all_wrap .l-wrapper .postContents .content .wp-block-columns h4:first-of-type,
#all_wrap .l-wrapper .pageContents .content .wp-block-columns h4:first-of-type,
#all_wrap .l-wrapper .postContents .content .wp-block-columns h5:first-of-type,
#all_wrap .l-wrapper .pageContents .content .wp-block-columns h5:first-of-type {
    margin-top: 0;
}
#all_wrap .l-wrapper .postContents .content p.toriatsukai,
#all_wrap .l-wrapper .pageContents .content p.toriatsukai {
    display: inline-block;
    background: #33BBED;
    color: #FFF;
    padding: 11px 35px 10px;
    border-radius: 40px;
}

/*投稿ページ　タグ下マージン*/
#all_wrap .l-wrapper .dateList {
    margin-bottom: 5px;
}

/*下マージン*/
#all_wrap .content .mb0,
#all_wrap .content .mb0 { margin-bottom: 0px; }
#all_wrap .content .mb5,
#all_wrap .content .mb5 { margin-bottom: 5px; }
#all_wrap .content .mb10,
#all_wrap .content .mb10 { margin-bottom: 10px; }
#all_wrap .content .mb20,
#all_wrap .content .mb20 { margin-bottom: 20px; }
#all_wrap .content .mb30,
#all_wrap .content .mb30 { margin-bottom: 30px; }
#all_wrap .content .mb40,
#all_wrap .content .mb40 { margin-bottom: 40px; }
#all_wrap .content .mb50,
#all_wrap .content .mb50 { margin-bottom: 50px; }
#all_wrap .content .mb60,
#all_wrap .content .mb60 { margin-bottom: 60px; }
#all_wrap .content .mb70,
#all_wrap .content .mb70 { margin-bottom: 70px; }
#all_wrap .content .mb80,
#all_wrap .content .mb80 { margin-bottom: 80px; }
#all_wrap .content .mb90,
#all_wrap .content .mb90 { margin-bottom: 90px; }
#all_wrap .content .mb100,
#all_wrap .content .mb100 { margin-bottom: 100px; }
#all_wrap .content .mb150,
#all_wrap .content .mb150 { margin-bottom: 150px; }
#all_wrap .content .mb200,
#all_wrap .content .mb200 { margin-bottom: 200px; }

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
    #all_wrap p {
        font-size: 14px;
        line-height: 2em;
        font-weight: 300;
        font-feature-settings: "palt" 1;
        font-style: normal;
    }
    #all_wrap .l-wrapper .content p {
        font-size: 14px;
        line-height: 2em;
        padding: 0;
        margin-bottom: 10px;
    }
    #all_wrap .l-wrapper-full .content p {
        font-size: 14px;
        line-height: 2em;
        padding: 0;
        margin-bottom: 10px;
    }
    #all_wrap .l-wrapper .postContents .content p.toriatsukai,
    #all_wrap .l-wrapper .pageContents .content p.toriatsukai {
        display: inline-block;
        background: #33BBED;
        color: #FFF;
        padding: 11px 35px 10px;
        border-radius: 40px;
        text-align: center;
    }
    /*下マージン*/
	#all_wrap .content .mb0,
	#all_wrap .content .mb0 { margin-bottom: 0px; }
	#all_wrap .content .mb5,
	#all_wrap .content .mb5 { margin-bottom: 5px; }
	#all_wrap .content .mb10,
	#all_wrap .content .mb10 { margin-bottom: 10px; }
	#all_wrap .content .mb20,
	#all_wrap .content .mb20 { margin-bottom: 20px; }
	#all_wrap .content .mb30,
	#all_wrap .content .mb30 { margin-bottom: 30px; }
	#all_wrap .content .mb40,
	#all_wrap .content .mb40 { margin-bottom: 20px; }
	#all_wrap .content .mb50,
	#all_wrap .content .mb50 { margin-bottom: 25px; }
	#all_wrap .content .mb60,
	#all_wrap .content .mb60 { margin-bottom: 30px; }
	#all_wrap .content .mb70,
	#all_wrap .content .mb70 { margin-bottom: 35px; }
	#all_wrap .content .mb80,
	#all_wrap .content .mb80 { margin-bottom: 40px; }
	#all_wrap .content .mb90,
	#all_wrap .content .mb90 { margin-bottom: 45px; }
	#all_wrap .content .mb100,
	#all_wrap .content .mb100 { margin-bottom: 50px; }
	#all_wrap .content .mb150,
	#all_wrap .content .mb150 { margin-bottom: 70px; }
	#all_wrap .content .mb200,
	#all_wrap .content .mb200 { margin-bottom: 100px; }
}

/*ウィジェットパディング*/
#all_wrap .widget-main {
    padding: 0;
    margin: 0;
	width: 100%;
}

/*== スマホ・PC 非表示 ==*/
.pc_none { display: none !important; }
.sp_none { display: block !important; }
@media only screen and (max-width: 768px){
	.pc_none { display: block !important; }
	.sp_none { display: none !important; }
}

/*日付*/
.Date {
    display: block;
    font-size: 12px;
    line-height: 1;
    font-weight: 300;
    color: #555;
    padding: 0;
    margin: 0 auto 20px;
}


/************************************************************/
/*　JS
/************************************************************/

/*lightbox*/
.nivo-lightbox-effect-fade {
    visibility: hidden;
    opacity: 0;
}
.nivo-lightbox-overlay.nivo-lightbox-open {
    visibility: visible;
    opacity: 1;
}
.nivo-lightbox-theme-default .nivo-lightbox-close {
    opacity: 1;
}
.nivo-lightbox-theme-default .nivo-lightbox-close {
    background-size: 20px 20px;
}
.nivo-lightbox-theme-default .nivo-lightbox-close {
    width: 20px;
    height: 20px;
}


/************************************************************/
/*　構成
/************************************************************/
.l-main {
	width: calc(80% - 50px);
	margin-bottom: 0;
    z-index: 1;
	position: static;
}
.top_wrapper {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}
#all_wrap .l-wrapper {
	width: 100%;
	max-width: 950px;
	padding: 50px 0;
    margin: 0 auto;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: stretch;
	align-items: stretch;
}
#all_wrap .l-wrapper-single {
	width: 100%;
	max-width: 1100px;
	min-width: 1100px;
	padding: 50px 0;
	margin: 0 auto;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: stretch;
	align-items: stretch;
}
.l-wrapper-full {
    position: relative;
    width: 100%;
	padding: 100px 0;
    margin: 0 auto;
	overflow: hidden;
}
.l-wrapper-cat {
	position: relative;
	width: 100%;
	padding: 50px 0;
	margin: 0 auto;
}

.wrapper {
	width: 100%;
	padding: 50px 0;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}

#all_wrap .l-wrapper .l-main {
    width: 100%;
    padding: 0;
    margin: 0 auto;
}
#all_wrap .l-wrapper-full .l-main {
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0;
}
#all_wrap .l-wrapper-cat .l-main {
	width: 100%;
	min-width: 100%;
	max-width: 100%;
	padding: 0;
	margin: 0;
}

.page {
    width: 100%;
}
.dividerBottom {
    margin-bottom: 0;
}
.pageContents .content,
.archiveContents .content {
    padding: 0;
    margin: 0 auto;
}
#all_wrap .l-wrapper-full .pageContents .content, #all_wrap .l-wrapper-full .archiveContents .content {
    margin: 0;
    padding: 0;
}
#all_wrap .l-wrapper-full .sitemap_content {
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0 auto 100px;
}
 
.l-sidebar {
	width: 300px;
	min-width: 300px;
    padding: 0;
	margin: 0 0 0 50px;
}
.l-main-wide    {width: calc(80% - 50px); margin-right:0;}
.l-main-wide1000{width:1100px;margin: auto;}
.l-main-wide900 {width:900px; margin: auto;}
.l-main-wide800 {width:800px; margin: auto;}
.l-main-wide700 {width:700px; margin: auto;}
.l-main-right   {order: 2;}

#all_wrap .phrase-primary {
	text-align: center;
}
/*検索結果なし*/
.archive__item-none {
	width: 90%;
	padding: 0;
	margin: 0 auto;
	border: none;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
    #all_wrap .l-wrapper .l-main {
        width: 100%;
        max-width: 100%;
        padding: 0;
        margin: 0 auto;
    }
    #all_wrap.main_page .l-wrapper {
        width: 100%;
        max-width: 100%;
        padding: 0;
        margin: 0 auto;
    }
    #all_wrap.sub_page .l-wrapper {
        width: 100%;
        max-width: 100%;
        padding: 30px;
        margin: 0 auto;
    }
	#all_wrap .l-wrapper-single {
		width: 100%;
		max-width: 100%;
		min-width: 100%;
		padding: 30px;
		margin: 0 auto;
		display: block;
	}
    .l-wrapper-full .l-main {
        width: 100%;
        padding: 30px;
        margin: 0 auto;
    }
	#all_wrap .l-wrapper .l-main {
		width: 100%;
		min-width: 100%;
		max-width: 100%;
		padding: 0;
		margin: 0 auto;
	}
    #all_wrap .l-wrapper-full .l-main,
	#all_wrap .l-wrapper-single .l-main {
        width: 100%;
        padding: 0;
        margin: 0 auto;
    }

    .l-wrapper {
        width: 100%;
        padding: 0;
        margin: 0;
    }
    .l-wrapper-full {
        position:relative;
        width: 100%;
        margin: 0 auto;
        padding: 30px 0;
    }
	.l-wrapper-full.cat {
		position:relative;
		width: 100%;
		margin: 0 auto;
		padding: 30px 0;
	}
	.l-wrapper-cat {
		position: relative;
		width: 100%;
		padding: 30px;
		margin: 0 auto;
	}
    
	/*トップ構成*/
	.top_wrapper {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	#topMain {
		width: calc(100%);
		padding: 0;
		margin: 0;
		overflow: hidden;
		background: #fff;
	}
    
	.side-banner {
		display: block;
		margin-bottom: 0 !important;
	}
	.side-contents {
		display: none;
	}
    
    .page {
        width: 100%;
        padding: 0;
        margin: 0;
    }
    .content {
        width: 100%;
        padding: 0;
        margin: 0;
    }
    .postContents {
        width: 100%;
        margin: 0 auto;
        padding: 0;
    }
    .pageContents .content,
    .archiveContents .content {
        padding: 0;
        margin: 0 auto;
    }
    
    /*グーグルマップ表示*/
    .l-wrapper iframe {
        width: 100%;
    }
    
    /*検索結果なし*/
    .archive__item-none {
        width: 90%;
        padding: 0;
        margin: 0 auto;
        border: none;
    }
	
}

.widgetSearch__contents .widgetSearch__select {
    -webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
    padding: 10px 10px;
    line-height: 1em;
}
.searchbox {
    width: 100%;
    position: relative;
    display: inline-block;
}
.searchbox::after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-bottom: solid 2px #b4b3b3;
  border-right: solid 2px #b4b3b3;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -4px;
}

#all_wrap .pager {
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0 auto;
	margin-top: 50px;
}

/************************************************************/
/*　見出し　＆　パンくず
/************************************************************/

h1,h2,h3,h4,h5,h6,strong {
	font-family: var(--font-jp2);
	font-weight: lighter;
    font-style: normal;
    -webkit-text-size-adjust: 100%;
    font-feature-settings: "palt" 1;
    font-size: 1em;
}
b,strong {
	font-weight: bold;
}

#pagevisual {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#page_title {
	width: 550px;
	padding: 150px 80px;
	margin: 0;
	background: #eee;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
}
#page_title::before {
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #ddd;
	position: absolute;
	top: 0;
	left: 0;
}
#page_title::after {
	content: '';
	display: block;
	width: 50px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	top: 0;
	left: 50px;
	z-index: 1;
}
/*情報*/
#all_wrap #page_title > h1 {
	width: 100%;
	padding: 0;
	margin: 0 auto 10px;
	text-align: left;
	border: none;
	background: none;
	position: relative;
	font-size: 35px;
	line-height: 1.2em;
}
#all_wrap #page_title > em {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0 auto 40px;
	position: relative;
	font-family: var(--font-en);
	font-size: 15px;
	line-height: 1.7em;
	font-weight: 600;
	color: var(--text);
	text-transform: uppercase;
	font-style: normal;
}
#all_wrap #page_title > p {
	font-size: 14px;
	line-height: 2em;
	padding: 0;
	margin: 0;
	text-align: justify;
	text-justify: inter-ideograph;
}
/*画像*/
#pagevisual > figure {
	width: calc(100% - 550px);
	padding: 0;
	margin: 0;
	position: relative;
	text-align: center;
	overflow: hidden;
	z-index: 0;
}
#pagevisual > figure::after {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	background: #283847;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0.5;
	z-index: -1;
}
#pagevisual > figure > img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	object-fit: cover;
	z-index: -2;
}
/*スクロール*/
#pagevisual > figure #scrolldown {
	display: block;
	width: 100px;
	height: 100px;
	padding: 0;
	margin: 0;
	position: absolute;
	bottom: 70px;
	right: 20px;
	z-index: 5;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#pagevisual {
		width: 100%;
		background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/10/pagevisual_sp.webp');
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
	}
	#page_title {
		width: 100%;
		padding: 50px 20px 80px;
		margin: 0;
		background: none;
	}
	#page_title::after {
		left: 20px;
	}
	/*情報*/
	#all_wrap #page_title > h1 {
		margin: 0 auto;
		font-size: 20px;
		color: #fff;
		z-index: 10;
	}
	#all_wrap #page_title > em {
		margin: 0 auto 20px;
		font-size: 12px;
		color: #fff;
		z-index: 10;
	}
	#all_wrap #page_title > p {
		font-size: 12px;
		line-height: 1.4em;
		color: #fff;
		z-index: 10;
	}
	/*画像*/
	#pagevisual > figure {
		width: calc(100%);
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		text-align: center;
		overflow: hidden;
		z-index: 5;
	}
	#pagevisual > figure > img {
		display: none;
	}
	/*スクロール*/
	#pagevisual > figure #scrolldown {
		display: block;
		width: 50px;
		height: 50px;
		padding: 0;
		margin: 0;
		position: absolute;
		bottom: 45px;
		right: 20px;
		z-index: 5;
	}
	#pagevisual > figure #scrolldown > img {
		width: 50px;
	}
}

/*記事詳細タイトル*/
#all_wrap .singleHeader {
	width: 100%;
	padding: 0;
	margin: 0 auto 40px;
}
#all_wrap .tagList {
	width: 100%;
	padding: 0;
	margin: 0 auto 10px;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	column-gap: 8px;
	grid-row-gap: 8px;
}
#all_wrap .tagList .tag {
	display: inline-block;
	padding: 5px 5px;
	margin: 0;
	background: var(--main);
	color: #fff;
	font-size: 10px;
	line-height: 1;
	font-weight: lighter;
	font-style: normal;
	border-radius: 3px;
}
#all_wrap .tagList .tag a {
	color: #fff;
	text-decoration: none;
}
#all_wrap .singleHeader .date {
	display: block;
	color: #838383;
	font-family: var(--font-en);
	font-size: 12px;
	line-height: 1;
	font-weight: lighter;
	padding: 0;
	margin: 0 auto 10px;
}
#all_wrap .singleHeader h1 {
	display: block;
	width: 100%;
	padding: 0 0 15px;
	margin: 0 auto;
	font-size: 30px;
	line-height: 1.4em;
	font-weight: lighter;
	font-feature-settings: "palt" 1;
	font-style: normal;
	border-bottom: 1px solid #1e1e1e;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*記事詳細タイトル*/
	#all_wrap .singleHeader {
		width: 100%;
		padding: 0;
		margin: 0 auto 20px;
	}
	#all_wrap .singleHeader .date {
		margin: 0 auto 10px;
		font-size: 14px;
	}
	#all_wrap .singleHeader h1 {
		padding: 0 0 10px;
		font-size: 20px;
	}
}

/*h2*/
#all_wrap .content h2 {
	display: block;
	width: 100%;
	padding: 0 0 15px;
	margin: 2em auto 30px;
	font-size: 30px;
	line-height: 1.4em;
	font-feature-settings: "palt" 1;
	font-style: normal;
	border: none;
	position: relative;
	z-index: 0;
}
#all_wrap .content h2.mt0 {
	margin-top: 0;
}
#all_wrap .content h2::before {
	content: '';
	display: block;
	width: 90px;
	height: 1px;
	background: var(--main);
	position: absolute;
	bottom: -1px;
	left: 0;
	transform: translate(0,0);
	-webkit-transform: translate(0,0);
	z-index: 1;
}
#all_wrap .content h2.center {
	text-align: center;
}
#all_wrap .content h2.center::before {
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: 1;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*h2*/
	#all_wrap .content h2 {
		display: block;
		width: 100%;
		padding: 0 0 10px;
		margin: 2em auto 15px;
		font-size: 20px;
	}
}


/*h3*/
#all_wrap .content h3 {
	padding: 0;
	margin: 1em auto 10px;
	border: none;
	font-size: 25px;
	line-height: 1.4em;
	font-weight: bold;
	color: var(--text);
	position: relative;
	z-index: 0;
}
#all_wrap .content h3.center {
	text-align: center;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*h3*/
	#all_wrap .content h3 {
		padding: 0;
		margin: 1em auto 10px;
		border: none;
		font-size: 17px;
		line-height: 1.4em;
		font-weight: bold;
		color: var(--text);
		position: relative;
		z-index: 0;
	}
	#all_wrap .content h3.center {
		text-align: center;
	}
}

/*h4*/
#all_wrap .content h4 {
    display: block;
    padding: 0;
    margin: 0.5em auto 10px;
    position: relative;
	font-weight: lighter;
    font-size: 18px;
    line-height: 1.4em;
    position: relative;
	color: var(--text);
}
#all_wrap .content h4:first-of-type {
	margin-top: 0;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*h4*/
	#all_wrap .content h4 {
		display: block;
		padding: 0;
		margin: 0.5em auto 7px;
		position: relative;
		font-weight: lighter;
		font-size: 16px;
		line-height: 1.4em;
		position: relative;
		color: var(--text);
	}
	#all_wrap .content h4:first-of-type {
		margin-top: 0;
	}
}

/*h5*/
#all_wrap .content h5 {
	display: block;
	padding: 0;
	margin: 0.5em auto 10px;
	position: relative;
	font-weight: lighter;
	font-size: 17px;
	line-height: 1.4em;
	position: relative;
	color: var(--text);
}

/*h5*/
#all_wrap .content h6 {
	display: block;
	padding: 0;
	margin: 0.5em auto 10px;
	position: relative;
	font-weight: lighter;
	font-size: 16px;
	line-height: 1.4em;
	position: relative;
	color: var(--main);
}

/************************************************************/
/*　ページネーション
/************************************************************/
.pager {
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-items: stretch;
    flex-wrap: wrap;
}
.pager > li {
    line-height: 1;
    padding: 0;
    margin: 0 5px 0 0;
    text-align: center;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: var(--font-en);
    font-weight: 500;
    font-style: normal;
    font-feature-settings: "palt";
    color: var(--text);
    border: 1px solid var(--text);
}
.pager > li:hover {
    border: 1px solid var(--text);
    background: none;
}
.pager > li.pager__item-current {
    padding: 5px;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-items: center;
	background: var(--text);
	border: 1px solid var(--text);
    color: #fff;
}
.pager > li.pager__item-next,
.pager > li.pager__item-prev {
    background: none;
    border-radius: 0;
    font-family: var(--font-en);
    font-weight: 500;
    font-style: normal;
    font-feature-settings: "palt";
}
.pager > li a {
    text-align: center;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: var(--font-en);
    font-weight: 500;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: "palt";
    transition: ease 0.2s;
    line-height: 1;
    background: none;
}
.pager > li a:hover {
    background: var(--text);
    color: #fff;
    font-family: var(--font-en);
    font-weight: 500;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: "palt";
    transition: ease 0.2s;
    line-height: 1;
}

/************************************************************/
/*　パンくず
/************************************************************/
/*パンくず*/
.breadcrumb {
	width: calc(100%);
    max-width: 100%;
    padding: 20px 20px;
    margin: 0 auto;
    background: none;
    border: none;
    overflow-x: scroll;
	position: absolute;
	bottom: 0;
	left: 0;
    z-index: 5;
    -ms-overflow-style: none;
    scrollbar-width: none;
	z-index: 10;
	border-top: 1px solid #eee;
}
#all_wrap .breadcrumb .container {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
}
.breadcrumb::-webkit-scrollbar { 
    display:none;
}
.breadcrumb > ul {
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0 auto;
    font-size: 12px;
    color: #fff;
	justify-content: flex-start;
	font-family: var(--font-jp);
}
.breadcrumb a {
    font-size: 12px;
    line-height: 1;
    padding: 0;
    margin: 0;
    text-decoration: none;
    transition: ease 0.2s;
	color: #fff;
    font-family: var(--font-jp);
    font-weight: 500;
    font-style: normal;
    font-feature-settings: "palt";
}
.breadcrumb a:hover {
    text-decoration: none;
    transition: ease 0.2s;
	color: var(--main);
    opacity: 0.8;
}
.breadcrumb__list {
    padding: 0;
}
.breadcrumb__item {
    position: relative;
    display: table-cell;
    white-space: nowrap;
    padding-right: 15px;
    padding-left: 15px;
    font-size: 12px;
    line-height: 1;
	color: #fff;
}
.breadcrumb__item::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -2px;
    width: 5px;
    height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
    /*パンくず*/
    .breadcrumb {
		width: 100%;
		max-width: 100%;
		padding: 20px;
		margin: 0 auto;
		background: none;
		border: none;
		overflow-x: scroll;
		z-index: 0;
		-ms-overflow-style: none;
		scrollbar-width: none;
    }
    .breadcrumb::-webkit-scrollbar {
        display: none;
    }
    .breadcrumb::before {
        display: none;
    }
    .breadcrumb::after {
        display: none;
    }
    .breadcrumb > ul {
        width: 100%;
        padding: 0;
        margin: 0;
        font-size: 10px;
		color: #fff;
        background: none;
		justify-content: flex-start;
    }
    .breadcrumb a {
        font-size: 10px;
        line-height: 1;
        padding: 0;
        margin: 0;
        text-decoration: none;
        transition: ease 0.2s;
		color: #fff;
    }
    .breadcrumb a:hover {
        text-decoration: none;
        transition: ease 0.2s;
        color: #fff;
        opacity: 0.8;
    }
    .breadcrumb__list {
        padding: 0;
        display: block;
    }
    .breadcrumb__item {
        position: relative;
        display: table-cell;
        white-space: nowrap;
        padding-right: 15px;
        padding-left: 15px;
        font-size: 10px;
        line-height: 1;
		color: #fff;
    }
    .breadcrumb__item::after {
        content: "";
        position: absolute;
        right: 0;
        top: 50%;
        margin-top: -2px;
        width: 5px;
        height: 5px;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
    }
}


/************************************************************/
/*　フォントサイズ
/************************************************************/
.content table {
	font-size: 15px;
    color: #fff;
}


/************************************************************/
/*　ヘッダー
/************************************************************/
#header {
	width: 100%;
	padding: 24px 50px;
	margin: 0;
	background: #fff;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 50px;
	position: relative;
	transition: var(--ease);
	z-index: 100;
}
#header.fixed {
	background: rgba(255,255,255,1);
	position: fixed;
	top: 0;
	left: 0;
	transition: var(--ease);
	animation: 0.3s linear headease;
}
@keyframes headease {
	0%{ transform: translateY(-100%); }
	100%{ transform: translateY(0); }
}
/*ロゴ*/
#header > #logo {
	width: auto;
	height: 40px;
	padding: 0;
	margin: 0;
}
#header > #logo img {
	width: auto;
	height: 100%;
}
/*サブナビ*/
#subNav {
	padding: 0;
	margin: 0;
}
#subNav > ul {
	padding: 0;
	margin: 0;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 20px;
	position: relative;
	list-style: none;
}
#subNav > ul > li {
	padding: 0;
	margin: 0;
}
#subNav > ul > li > a {
	display: inline-flex;
	display: -webkit-inline-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	padding: 0;
	margin: 0;
	column-gap: 10px;
	color: var(--text);
	font-weight: 500;
	text-decoration: none;
	transition: var(--ease);
}
#subNav > ul > li > a:hover {
	color: var(--link);
	transition: var(--ease);
}
/*メインナビ*/
#mainNav {
	padding: 0;
	margin: 0;
}
#mainNav > ul {
	padding: 0;
	margin: 0;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 40px;
	position: relative;
	list-style: none;
}
#mainNav > ul > li {
	padding: 0;
	margin: 0;
}
#mainNav > ul > li > a {
	display: inline-flex;
	display: -webkit-inline-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	padding: 0;
	margin: 0;
	column-gap: 10px;
	color: var(--text);
	text-decoration: none;
	transition: var(--ease);
}
#mainNav > ul > li img {
	display: inline-block;
	width: 18px;
}
#mainNav > ul > li em {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 18px;
	line-height: 1;
	font-style: normal;
	font-weight: 600;
}
#mainNav > ul > li span {
	display: inline-block;
	font-size: 10px;
	line-height: 1;
}
#mainNav > ul > li > a:hover {
	color: var(--link);
	transition: var(--ease);
}

/*メインナビ2*/
#mainNav2 {
	padding: 0;
	margin: 0 auto 0 0;
}
#mainNav2 > ul {
	padding: 0;
	margin: 0;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 40px;
	position: relative;
	list-style: none;
}
#mainNav2 > ul > li {
	padding: 0;
	margin: 0;
}
#mainNav2 > ul > li > a {
	display: inline-flex;
	display: -webkit-inline-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	padding: 0;
	margin: 0;
	column-gap: 10px;
	color: var(--text);
	text-decoration: none;
	transition: var(--ease);
}
#mainNav2 > ul > li img {
	display: inline-block;
	width: 22px;
}
#mainNav2 > ul > li em {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 25px;
	line-height: 1;
	font-style: normal;
	font-weight: 600;
}
#mainNav2 > ul > li span {
	display: inline-block;
	font-size: 16px;
	line-height: 1;
	color: #a02d2d;
}
#mainNav2 > ul > li > a:hover {
	color: var(--link);
	transition: var(--ease);
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#header {
		width: 100%;
		height: 50px;
		padding: 0 70px 0 10px;
		justify-content: flex-start;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 50;
		column-gap: 20px;
	}
	/*ロゴ*/
	#header > #logo {
		width: auto;
		height: 20px;
	}
	/*メインナビ*/
	#mainNav {
		display: none;
	}
	
	/*メインナビ2*/
	#mainNav2 {
		padding: 0;
		margin: 0;
	}
	#mainNav2 > ul > li > a {
		column-gap: 5px;
	}
	#mainNav2 > ul > li img {
		display: inline-block;
		width: 16px;
	}
	#mainNav2 > ul > li em {
		font-size: 18px;
		white-space: nowrap;
	}
	#mainNav2 > ul > li span {
		display: inline-block;
		font-size: 12px;
		white-space: nowrap;
	}
	
	/*サブ*/
	#subNav {
		display: none;
	}
}

/************************************************************/
/*　メインナビ
/************************************************************/


/************************************************************/
/*　サイドナビ
/************************************************************/

/************************************************************/
/*　ハンバーガーメニュー
/************************************************************/

/* ドロワーメニュー */
.humburger {
	width: 50px;
	height: 15px;
	padding: 0;
	margin: 0;
	position: absolute;
	top: calc(50%);
	left: 50%;
	transform: translate(-50%,-50%);
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
}
.humburger span {
	width: 100%;
	display: inline-block;
	transition: all .3s;/*アニメーションの設定*/
	position: absolute;
	left: 0;
	height: 1px;
	background: var(--text);
}
.humburger span:nth-of-type(1) {
	top:0;
}
.humburger span:nth-of-type(2) {
	top:6px;
}
.humburger span:nth-of-type(3) {
	top:12px;
}
#navTgl:checked + .open .humburger span:nth-of-type(1) {
	top: 0;
	left: 0;
	transform: translateY(7px) rotate(-45deg);
	width: 100%;
	background: #fff;
}
#navTgl:checked + .open .humburger span:nth-of-type(2) {
	opacity: 0;
	display: none;
	transform: none;
}
#navTgl:checked + .open .humburger span:nth-of-type(3) {
	top: 20px;
	left: 0;
	transform: translateY(-13px) rotate(45deg);
	width: 100%;
	background: #fff;
}
#navTgl {
	display: none;
}
label.open,
label.close {
	cursor: pointer;
}
.open {
	display: block;
	opacity: 1;
	z-index: 10001;
	width: 50px;
	height: 15px;
	color: var(--txt);
	background: none;
	box-sizing: border-box;
	font-size: 3em;
	text-align: center;
	transition: all 0.3s ease;
	position: relative;
}
#navTgl:checked + .open {
	background: none;
}
.close {
	pointer-events: none;
	z-index: 1;
	width: 100%;
	height: 100%;
	transition: all 0.3s ease;
}
#navTgl:checked ~ .close {
	pointer-events: auto;
}

/*パネル*/
#menu.menuNav {
	display: none;
	z-index: 9999;
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/09/menuNav_bg.webp');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	-webkit-transition: -webkit-transform .4s;
	transition: transform .4s;
	padding: 0;
	overflow: hidden;
	overflow-y: scroll;
	-ms-overflow-style: none;    /* IE, Edge 対応 */
	scrollbar-width: none;       /* Firefox 対応 */
	z-index: 0;
}
#menu.menuNav::before {
	content: '';
	display: block;
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: rgba(10,10,10,0.65);
	z-index: -1;
}
#menu.menuNav::-webkit-scrollbar {  /* Chrome, Safari 対応 */
	display:none;
}
#navTgl:checked ~ #menu.menuNav {
	-webkit-transition: -webkit-transform .4s;
	transition: transform .4s;
}
#menuNavBox {
	width: 50%;
	height: 100%;
	padding: 0;
	margin: 0 0 0 auto;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: flex-start;
	flex-wrap: wrap;
	z-index: 1;
	position: relative;
}
#menuNavBox::before {
	content: '';
	display: block;
	width: 50vw;
	height: 100vh;
	padding: 0;
	margin: 0;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	position: fixed;
	top: 0;
	right: 0;
	z-index: -1;
}
.menuNavBoxLeft {
	width: 100%;
	padding: 50px;
	margin: 0;
	position: relative;
	display: block;
}
.menuNavBoxRight {
	width: 100%;
	padding: 0;
	margin: 0;
}
.menuNavInfo {
	display: flex;
	display: -webkit-flex;
	align-content: center;
	flex-wrap: wrap;
	grid-row-gap: 40px;
}
.menuNavInfo > aside {
	padding: 0;
	margin: 0 auto;
	width: 100%;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/* ドロワーメニュー */
	.humburger {
		width: 25px;
		height: 15px;
		padding: 0;
		margin: 0;
		position: absolute;
		top: calc(50%);
		left: 50%;
		transform: translate(-50%,-50%);
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		align-content: center;
		align-items: center;
		flex-wrap: nowrap;
	}
	.humburger span {
		width: 100%;
		display: inline-block;
		transition: all .3s;/*アニメーションの設定*/
		position: absolute;
		left: 0;
		height: 1px;
		background: #fff;
	}
	.humburger span:nth-of-type(1) {
		top:0;
	}
	.humburger span:nth-of-type(2) {
		top:6px;
	}
	.humburger span:nth-of-type(3) {
		top:12px;
	}
	#navTgl:checked + .open .humburger span:nth-of-type(1) {
		top: 0;
		left: 0;
		transform: translateY(7px) rotate(-45deg);
		width: 100%;
		background: #fff;
	}
	#navTgl:checked + .open .humburger span:nth-of-type(2) {
		opacity: 0;
		display: none;
		transform: none;
	}
	#navTgl:checked + .open .humburger span:nth-of-type(3) {
		top: 20px;
		left: 0;
		transform: translateY(-13px) rotate(45deg);
		width: 100%;
		background: #fff;
	}
	#navTgl {
		display: none;
	}
	label.open,
	label.close {
		cursor: pointer;
	}
	.open {
		display: block;
		opacity: 1;
		z-index: 10001;
		width: 50px;
		height: 50px;
		color: var(--txt);
		background: #1e1e1e;
		box-sizing: border-box;
		font-size: 3em;
		text-align: center;
		transition: all 0.3s ease;
		position: fixed;
		top: 0;
		right: 0;
	}
	#navTgl:checked + .open {
		background: none;
	}
	.close {
		pointer-events: none;
		z-index: 1;
		width: 100%;
		height: 100%;
		transition: all 0.3s ease;
	}
	#navTgl:checked ~ .close {
		pointer-events: auto;
	}

	/*パネル*/
	#menu.menuNav {
		display: none;
		z-index: 9999;
		position: fixed;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/09/menuNav_bg_sp.webp');
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
		background-attachment: fixed;
		-webkit-transition: -webkit-transform .4s;
		transition: transform .4s;
		padding: 0;
		overflow: hidden;
		overflow-y: scroll;
		-ms-overflow-style: none;    /* IE, Edge 対応 */
		scrollbar-width: none;       /* Firefox 対応 */
	}
	#menu.menuNav::before {
		content: '';
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		background: rgba(10,10,10,0.65);
	}
	#menu.menuNav::after {
		display: none;
	}
	#menu.menuNav::-webkit-scrollbar {  /* Chrome, Safari 対応 */
		display:none;
	}
	#navTgl:checked ~ #menu.menuNav {
		-webkit-transition: -webkit-transform .4s;
		transition: transform .4s;
	}
	#menuNavBox {
		width: 100%;
		height: 100%;
		max-width: 100%;
		padding: 0;
		margin: 0 auto;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		align-content: flex-start;
		flex-wrap: wrap;
		z-index: 1;
	}
	#menuNavBox::before {
		content: '';
		display: block;
		width: 100vw;
		height: 200vh;
		padding: 0;
		margin: 0;
		backdrop-filter: blur(12px);
		-webkit-backdrop-filter: blur(12px);
		position: fixed;
		top: 0;
		right: 0;
		z-index: -1;
	}
	.menuNavBoxLeft {
		width: 100%;
		padding: 30px 30px 100px;
		margin: 0;
		position: relative;
		display: block;
	}
	.menuNavBoxRight {
		width: 100%;
		padding: 0;
		margin: 0;
	}
	.menuNavInfo {
		display: flex;
		display: -webkit-flex;
		align-content: center;
		flex-wrap: wrap;
		grid-row-gap: 20px;
	}
	.menuNavInfo > aside {
		padding: 0;
		margin: 0 auto;
		width: 100%;
	}
}


#all_wrap .panel_info {
	width: 100%;
	padding: 0;
	margin: 0 auto;
}
#all_wrap .panel_info > h2 {
	padding: 0;
	margin: 0 auto 10px;
	text-align: left;
	font-size: 20px;
	line-height: 1;
	color: #fff;
}
#all_wrap .panel_info > p {
	text-align: left;
	padding: 0;
	margin: 0 auto;
	font-size: 12px;
	line-height: 1.7em;
	color: #fff;
}

#all_wrap #menuNavBox .heading-widget {
	background: none;
	padding: 15px 20px;
	margin: 0 auto;
	color: #fff;
	border-bottom: 1px solid rgba(255,255,255,0.7);
	font-family: var(--font-jp2);
	font-size: 20px;
	line-height: 1;
	border-radius: 0;
}
#all_wrap .menuNavBoxLeft ul {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	border: none;
}
#all_wrap .menuNavBoxLeft ul > li {
	width: calc(100%);
	padding: 0;
	margin: 0;
	border: none;
}
#all_wrap .menuNavBoxLeft ul > li a {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	width: 100%;
	height: 100%;
	padding: 15px 50px 15px 20px;
	margin: 0;
	background: none;
	font-size: 14px;
	line-height: 1.4em;
	color: #fff;
	text-decoration: none;
	font-weight: 300;
	position: relative;
	z-index: 0;
	border-bottom: 1px solid rgba(255,1255,255,0.1);
}
#all_wrap .menuNavBoxLeft ul > li a:hover {
	color: #fff;
	transition: var(--ease);
}
#all_wrap .menuNavBoxLeft ul > li a::before {
	content: '';
	display: block;
	width: 0;
	height: 100%;
	padding: 0;
	margin: 0;
	background: rgba(0,0,0,0.2);
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	transition: var(--ease);
}
#all_wrap .menuNavBoxLeft ul > li a:hover::before {
	width: 100%;
	transition: var(--ease);
}
#all_wrap .menuNavBoxLeft ul > li a::after {
	content: '';
	display: block;
	width: 5px;
	height: 5px;
	padding: 0;
	margin: 0;
	background: none;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	position: absolute;
	top: 50%;
	right: 23px;
	transform: translate(0,-50%) rotate(45deg);
	z-index: -1;
	transition: var(--ease);
	opacity: 0;
}
#all_wrap .menuNavBoxLeft ul > li a:hover::after {
	right: 20px;
	opacity: 1;
	transition: var(--ease);
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#all_wrap .panel_info {
		width: 100%;
		padding: 0;
		margin: 0 auto;
	}
	#all_wrap #menuNavBox .heading-widget {
		background: none;
		padding: 15px 15px;
		margin: 0 auto;
		color: #fff;
		border-bottom: 1px solid rgba(255,255,255,0.7);
		font-family: var(--font-jp2);
		font-size: 18px;
		line-height: 1;
		border-radius: 0;
	}
	#all_wrap .panel_info > h2 {
		font-size: 18px;
	}
	#all_wrap .panel_info > p {
		font-size: 10px;
	}
	#all_wrap .menuNavBoxLeft ul{
		border-top: 1px solid rgba(255,1255,255,0.1);
	}
	#all_wrap .menuNavBoxLeft ul > li a {
		padding: 15px 40px 15px 15px;
	}
	#all_wrap .menuNavBoxLeft ul > li a::after {
		right: 18px;
	}
	#all_wrap .menuNavBoxLeft ul > li a:hover::after {
		right: 15px;
	}
}



/************************************************************/
/*　固定メニュー
/************************************************************/

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
}

/************************************************************/
/*　メインビジュアル
/************************************************************/
#mainVisual {
	width: 100%;
	padding: 0;
	margin: 0;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: flex-end;
	align-items: flex-end;
	flex-wrap: wrap;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/09/mv_bg.png');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	z-index: 0;
}
#mainVisual::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	background: #283847;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0.5;
	z-index: -1;
}
.mvInfo {
	width: 100%;
	padding: 50px;
	margin: 0;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 40px;
}
.mvInfo > em {
	display: block;
	font-family: var(--font-en);
	font-size: 130px;
	line-height: 110px;
	font-weight: 600;
	font-style: normal;
	color: #fff;
	text-transform: uppercase;
	white-space: nowrap;
}
.mvInfoTxt {
	padding: 0;
	margin: 0;
	position: relative;
}
#all_wrap .mvInfoTxt > h2 {
	padding: 0;
	margin: 0 0 20px;
	font-family: var(font-jp2);
	font-size: 25px;
	line-height: 1.4em;
	color: #fff;
	text-align: left;
	white-space: nowrap;
}
#all_wrap .mvInfoTxt > p {
	padding: 0;
	margin: 0;
	font-size: 14px;
	line-height: 2em;
	color: #fff;
	white-space: nowrap;
}

/*コピーライト*/
#mainVisual > address {
	width: 50px;
	height: 100%;
	display: inline-flex;
	display: -webkit-inline-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	padding: 10px;
	margin: 0;
	background: none;
	position: absolute;
	top: 0;
	right: 0;
	font-family: var(--font-en);
	font-size: 10px;
	font-weight: 600;
	font-style: normal;
	writing-mode: vertical-rl;
	color: #fff;
	transition: all 0.3s ease;
}
#mainVisual > address::before {
	content: '';
	display: block;
	width: 1px;
	height: calc(100% - 40px);
	padding: 0;
	margin: 0;
	background: #fff;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
	-webkit-transform: translate(0,-50%);
	opacity: 0.8;
}
/*右上テキスト*/
#mainVisual > span {
	display: block;
	padding: 0;
	margin: 0;
	text-align: right;
	font-family: var(--font-en);
	font-size: 14px;
	line-height: 1.7em;
	font-weight: 600;
	color: #fff;
	text-transform: uppercase;
	position: absolute;
	top: 50px;
	right: 100px;
}
/*scrolldown*/
#scrolldown {
	display: block;
	width: 120px;
	height: 120px;
	padding: 0;
	margin: 0;
	position: absolute;
	bottom: 60px;
	right: 100px;
}
#scrolldown > img {
	width: 100%;
	height: auto;
	animation:20s linear infinite rotation1;
}
@keyframes rotation1{
	0%{ transform:rotate(0);}
	100%{ transform:rotate(360deg); }
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#mainVisual {
		width: 100%;
		padding: 25px 0;
		background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/10/mv_sp.webp');
	}
	#mainVisual::before {
		content: '';
		display: block;
		width: 100%;
		height: 100%;
		padding: 0;
		margin: 0;
		background: #283847;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0.3;
		z-index: -2;
	}
	#mainVisual::after {
		content: '';
		display: block;
		width: 30%;
		height: 100%;
		padding: 0;
		margin: 0;
		background: rgba(40,73,119,0.8);
		position: absolute;
		top: 0;
		left: 0;
		backdrop-filter: blur(12px);
		-webkit-backdrop-filter: blur(12px);
		z-index: -1;
	}
	.mvInfo {
		width: 100%;
		padding: 25px;
		flex-wrap: wrap;
		column-gap: 20px;
	}
	.mvInfo > em {
		display: block;
		width: 100%;
		font-size: 70px;
		line-height: 60px;
		margin: 0 auto 10px;
	}
	.mvInfoTxt {
		width: 100%;
		padding: 0;
		margin: 0;
		position: relative;
	}
	#all_wrap .mvInfoTxt > h2 {
		margin: 0 0 10px;
		font-size: 18px;
	}
	#all_wrap .mvInfoTxt > p {
		font-size: 14px;
	}

	/*コピーライト*/
	#mainVisual > address {
		display: none;
	}
	/*右上テキスト*/
	#mainVisual > span {
		font-size: 12px;
		top: 25px;
		right: 25px;
	}
	/*scrolldown*/
	#scrolldown {
		display: block;
		width: 100px;
		height: 100px;
		padding: 0;
		margin: 0 auto;
		position: relative;
		bottom: unset;
		right: unset;
	}
	#scrolldown > img {
		width: 100px;
		height: auto;
		animation:20s linear infinite rotation1;
	}
}

/************************************************************/
/*　サイドバー
/************************************************************/
#all_wrap .l-sidebar .sticky {
	padding: 0;
	margin: 0 auto 30px;
	background: none;
}
#all_wrap .l-sidebar .heading-widget {
	width: 100%;
	padding: 12px;
	margin: 0 auto 1px;
	background: var(--main);
	border-radius: 0;
	color: #fff;
	text-align: center;
	font-family: var(--font-en);
	font-size: 15px;
	font-weight: 500;
	line-height: 1.2em;
	position: relative;
	z-index: 0;
}
#all_wrap .l-sidebar .menu {
	width: 100%;
	padding: 10px;
	margin: 0 auto;
	border: none;
	background: rgba(0,0,0,0.05);
	box-shadow: none;
	list-style: none;
	position: relative;
}
#all_wrap .l-sidebar .menu > li {
	width: 100%;
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	box-shadow: none;
}
#all_wrap .l-sidebar .menu > li a {
	display: block;
	padding: 10px 15px 10px 15px;
	margin: 0 auto;
	border-bottom: 1px solid rgba(0,0,0,0.1);
	background: #fff;
	position: relative;
	font-size: 14px;
	line-height: 1.4em;
	color: var(--text);
	font-weight: 500;
	box-shadow: none;
	transition: all 0.3s ease;
}
#all_wrap .l-sidebar .menu > li:last-child a {
	border-bottom: none;
}
#all_wrap .l-sidebar .menu > li a::before,
#all_wrap .l-sidebar .menu > li a::after {
	display: none;
}
#all_wrap .l-sidebar .menu > li a:hover {
	font-size: 14px;
	line-height: 1.4em;
	color: var(--main);
	font-weight: 500;
	transition: all 0.3s ease;
}

/*サブメニュー*/
#all_wrap .l-sidebar .menu .sub-menu {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	border: none;
	background: none;
	box-shadow: none;
	list-style: none;
	position: relative;
}
#all_wrap .l-sidebar .menu .sub-menu > li {
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	box-shadow: none;
}
#all_wrap .l-sidebar .menu .sub-menu > li a {
	display: block;
	padding: 10px 15px 10px 30px;
	margin: 0 auto;
	border-bottom: 1px solid rgba(0,0,0,0.1);
	background: #fafafa;
	position: relative;
	font-size: 13px;
	line-height: 1.4em;
	color: var(--main);
	font-weight: lighter;
	box-shadow: none;
	transition: all 0.3s ease;
}
#all_wrap .l-sidebar .menu .sub-menu > li a::before,
#all_wrap .l-sidebar .menu .sub-menu > li a::after {
	display: none;
}
#all_wrap .l-sidebar .menu .sub-menu > li a::before {
	content: '';
	display: block;
	width: 5px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #222;
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translate(0,-50%);
	-webkit-transform: translate(0,-50%);
}
/*サブメニュー2*/
#all_wrap .l-sidebar .menu .sub-menu .sub-menu {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	border: none;
	background: none;
	box-shadow: none;
	list-style: none;
	position: relative;
}
#all_wrap .l-sidebar .menu .sub-menu .sub-menu > li {
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	box-shadow: none;
}
#all_wrap .l-sidebar .menu .sub-menu .sub-menu > li a {
	display: block;
	padding: 10px 15px 10px 50px;
	margin: 0 auto;
	border-bottom: 1px solid rgba(0,0,0,0.1);
	background: #fafafa;
	position: relative;
	font-size: 12px;
	line-height: 1.4em;
	color: var(--main);
	font-weight: lighter;
	box-shadow: none;
	transition: all 0.3s ease;
}
#all_wrap .l-sidebar .menu .sub-menu .sub-menu > li a::before,
#all_wrap .l-sidebar .menu .sub-menu .sub-menu > li a::after {
	display: none;
}
#all_wrap .l-sidebar .menu .sub-menu .sub-menu > li a::before {
	content: '';
	display: block;
	width: 5px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #222;
	position: absolute;
	top: 50%;
	left: 35px;
	transform: translate(0,-50%);
	-webkit-transform: translate(0,-50%);
}


/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#all_wrap .l-sidebar {
		display: none;
	}
}

/************************************************************/
/*　フッター
/************************************************************/
#footerContent {
	width: 100%;
	padding: 40px 0 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	background: #989898;
	flex-wrap: wrap;
	grid-row-gap: 0;
}
.footerTop {
	width: 100%;
	padding: 0 50px;
	margin: 0 auto;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	position: relative;
	
	display: none; /*一時的非表示*/
}
.footerMid {
	width: 100%;
	min-width: 1080px;
	padding: 0 50px;
	margin: 0 auto;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	column-gap: 30px;
	grid-row-gap: 40px;
	position: relative;
}
.footerMid::before,
.footerMid::after {
	content: '';
	display: block;
	width: calc(25% - 22.5px);
}
.footerMid::before {
	order: 1;
}
.footerBtm {
	width: 100%;
	padding: 20px 50px;
	margin: 0 auto;
	background: #646464;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	position: relative;
}

/*情報*/
#all_wrap .widget_info {
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 40px;
}
#all_wrap .widget_info > .logo {
	padding: 0;
	margin: 0;
	height: 65px;
}
#all_wrap .widget_info > .logo img {
	width: auto;
	height: 100%;
}
#all_wrap .widget_info h2 {
	padding: 0;
	margin: 0 auto 5px;
	font-size: 15px;
	line-height: 1.4em;
	border: none;
	background: none;
	position: relative;
}
#all_wrap .widget_info p {
	padding: 0;
	margin: 0;
	position: relative;
	text-align: left;
	font-size: 12px;
	line-height: 1.7em;
}

/*メニュー*/
#all_wrap .footerMid aside {
	width: calc(25% - 22.5px);
	padding: 0;
	margin: 0;
}
#all_wrap .footerMid .heading-widget {
	padding: 0 0 10px;
	margin: 0 auto 10px;
	width: 100%;
	background: none;
	border-radius: 0;
	border: none;
	position: relative;
	color: #fff;
	border-bottom: 1px solid #fff;
	font-size: 15px;
	line-height: 1.4em;
}
#all_wrap .footerMid .heading-widget::before,
#all_wrap .footerMid .heading-widget::after {
	display: none;
}
#all_wrap .footerMid .menu {
	padding: 0;
	margin: 0;
	position: relative;
	list-style: none;
	border: none;
	background: none;
}
#all_wrap .footerMid .menu > li {
	width: 100%;
	padding: 0 0 0 15px;
	margin: 0 auto 8px;
	position: relative;
	border: none;
	background: none;
}
#all_wrap .footerMid .menu > li:last-child {
	margin-bottom: 0;
}
#all_wrap .footerMid .menu > li::before {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	padding: 0;
	margin: 0;
	background: none;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	position: absolute;
	top: 0.40em;
	left: 0;
	transform: rotate(45deg);
}
#all_wrap .footerMid .menu > li > a {
	font-size: 12px;
	line-height: 1.4em;
	color: #fff;
	font-weight: 400;
	text-decoration: none;
	transition: var(--ease);
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	display: inline;
}
#all_wrap .footerMid .menu > li > a::before,
#all_wrap .footerMid .menu > li > a::after {
	display: none;
}
#all_wrap .footerMid .menu > li > a:hover {
	text-decoration: underline;
	transition: var(--ease);
}

/*サブメニュー*/
#menu-footer-menu {
	width: 60%;
	padding: 0;
	margin: 0 auto 25px;
	list-style: none;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	column-gap: 40px;
	background: none;
	border: none;
	box-shadow: none;
}
#menu-footer-menu  > li {
	padding: 0;
	margin: 0;
	background: none;
	border: none;
	box-shadow: none;
}
#menu-footer-menu > li > a {
	padding: 0;
	margin: 0;
	position: relative;
	background: none;
	border: none;
	box-shadow: none;
	transition: var(--ease);
}
#menu-footer-menu > li > a span {
	display: block;
	padding: 0;
	margin: 0 auto 5px;
	text-align: center;
	font-family: var(--font-en);
	font-size: 25px;
	line-height: 1;
	color: var(--text);
}
#menu-footer-menu > li > a p {
	font-family: var(--font-jp2);
	font-size: 12px;
	line-height: 1;
	color: var(--text);
	text-align: center;
	padding: 0;
	margin: 0;
}
#menu-footer-menu > li::before,
#menu-footer-menu > li::after,
#menu-footer-menu > li > a::before,
#menu-footer-menu > li > a::after {
	display: none;
}
#menu-footer-menu > li > a:hover span,
#menu-footer-menu > li > a:hover p {
	color: var(--main);
	transition: var(--ease);
}

/*メニュー*/
#footer-submenu-menu {
	width: 50%;
	padding: 0;
	margin: 0;
	list-style: none;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	column-gap: 15px;
	background: none;
	border: none;
	box-shadow: none;
}
#footer-submenu-menu > li {
	padding: 0;
	margin: 0;
	background: none;
	border: none;
	box-shadow: none;
}
#footer-submenu-menu > li > a {
	padding: 0;
	margin: 0;
	position: relative;
	background: none;
	border: none;
	box-shadow: none;
	font-size: 12px;
	line-height: 1;
	font-weight: lighter;
	color: #fff;
	text-decoration: none;
	transition: var(--ease);
}
#footer-submenu-menu > li::before,
#footer-submenu-menu > li::after,
#footer-submenu-menu > li > a::before,
#footer-submenu-menu > li > a::after {
	display: none;
}
#footer-submenu-menu > li > a:hover {
	text-decoration: underline;
	font-weight: lighter;
	text-decoration: underline;
	transition: var(--ease);
}

/*コピーライト*/
.copyright {
	display: block;
	width: 50%;
	font-size: 10px;
	line-height: 1;
	font-style: normal;
	text-align: right;
	color: #fff;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#footerContent {
		width: 100%;
		padding: 30px 0;
		margin: 0 auto;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		background: #989898;
		flex-wrap: wrap;
		grid-row-gap: 0;
	}
	.footerTop {
		width: 100%;
		padding: 0 30px;
		margin: 0 auto;
		display: flex;
		display: -webkit-flex;
		justify-content: center;
		flex-wrap: wrap;
		position: relative;
	}
	.footerMid {
		width: 100%;
		min-width: 100%;
		padding: 0 30px 10px;
		margin: 0 auto;
		display: flex;
		display: -webkit-flex;
		justify-content: flex-start;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 30px;
		position: relative;
	}
	.footerBtm {
		width: 100%;
		padding: 20px 30px 50px;
		margin: 0 auto;
		background: #646464;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		grid-row-gap: 20px;
		position: relative;
	}

	/*情報*/
	#all_wrap .widget_info {
		padding: 0;
		margin: 0;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		flex-wrap: nowrap;
		column-gap: 40px;
	}
	#all_wrap .widget_info > .logo {
		padding: 0;
		margin: 0;
		height: 65px;
	}
	#all_wrap .widget_info > .logo img {
		width: auto;
		height: 100%;
	}
	#all_wrap .widget_info h2 {
		padding: 0;
		margin: 0 auto 5px;
		font-size: 15px;
		line-height: 1.4em;
		border: none;
		background: none;
		position: relative;
	}
	#all_wrap .widget_info p {
		padding: 0;
		margin: 0;
		position: relative;
		text-align: left;
		font-size: 12px;
		line-height: 1.7em;
	}

	/*メニュー*/
	#all_wrap .footerMid .widget_nav_menu {
		width: 100%;
	}
	#all_wrap .footerMid .heading-widget {
		padding: 0 0 10px;
		margin: 0 auto 10px;
		width: 100%;
		background: none;
		border-radius: 0;
		border: none;
		position: relative;
		color: #fff;
		border-bottom: 1px solid #fff;
		font-size: 15px;
		line-height: 1.4em;
	}
	#all_wrap .footerMid .heading-widget::before,
	#all_wrap .footerMid .heading-widget::after {
		display: none;
	}
	#all_wrap .footerMid .menu {
		width: 100%;
		padding: 0;
		margin: 0;
		position: relative;
		list-style: none;
		border: none;
		background: none;
	}
	#all_wrap .footerMid .menu > li {
		width: 100%;
		padding: 0 0 0 15px;
		margin: 0 auto 8px;
		position: relative;
		border: none;
		background: none;
	}
	#all_wrap .footerMid .menu > li:last-child {
		margin-bottom: 0;
	}
	#all_wrap .footerMid .menu > li::before {
		content: '';
		display: block;
		width: 8px;
		height: 8px;
		padding: 0;
		margin: 0;
		background: none;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		position: absolute;
		top: 0.40em;
		left: 0;
		transform: rotate(45deg);
	}
	#all_wrap .footerMid .menu > li > a {
		font-size: 12px;
		line-height: 1.4em;
		color: #fff;
		font-weight: 400;
		text-decoration: none;
		transition: var(--ease);
		padding: 0;
		margin: 0;
		border: none;
		background: none;
		display: inline;
	}
	#all_wrap .footerMid .menu > li > a::before,
	#all_wrap .footerMid .menu > li > a::after {
		display: none;
	}
	#all_wrap .footerMid .menu > li > a:hover {
		text-decoration: underline;
		transition: var(--ease);
	}

	/*メニュー*/
	#menu-footer-menu {
		width: 100%;
		padding: 0;
		margin: 0 auto 25px;
		list-style: none;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: flex-end;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		column-gap: 40px;
		background: none;
		border: none;
		box-shadow: none;
	}
	#menu-footer-menu  > li {
		padding: 0;
		margin: 0;
		background: none;
		border: none;
		box-shadow: none;
	}
	#menu-footer-menu > li > a {
		padding: 0;
		margin: 0;
		position: relative;
		background: none;
		border: none;
		box-shadow: none;
		transition: var(--ease);
	}
	#menu-footer-menu > li > a span {
		display: block;
		padding: 0;
		margin: 0 auto 5px;
		text-align: center;
		font-family: var(--font-en);
		font-size: 25px;
		line-height: 1;
		color: var(--text);
	}
	#menu-footer-menu > li > a p {
		font-family: var(--font-jp2);
		font-size: 12px;
		line-height: 1;
		color: var(--text);
		text-align: center;
		padding: 0;
		margin: 0;
	}
	#menu-footer-menu > li::before,
	#menu-footer-menu > li::after,
	#menu-footer-menu > li > a::before,
	#menu-footer-menu > li > a::after {
		display: none;
	}
	#menu-footer-menu > li > a:hover span,
	#menu-footer-menu > li > a:hover p {
		color: var(--main);
		transition: var(--ease);
	}

	/*メニュー*/
	#footer-submenu-menu {
		width: 100%;
		padding: 0;
		margin: 0;
		list-style: none;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: center;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		column-gap: 15px;
		background: none;
		border: none;
		box-shadow: none;
	}
	#footer-submenu-menu > li {
		padding: 0;
		margin: 0;
		background: none;
		border: none;
		box-shadow: none;
	}
	#footer-submenu-menu > li > a {
		padding: 0;
		margin: 0;
		position: relative;
		background: none;
		border: none;
		box-shadow: none;
		font-size: 12px;
		line-height: 1;
		font-weight: lighter;
		color: #fff;
		text-decoration: none;
		transition: var(--ease);
	}
	#footer-submenu-menu > li::before,
	#footer-submenu-menu > li::after,
	#footer-submenu-menu > li > a::before,
	#footer-submenu-menu > li > a::after {
		display: none;
	}
	#footer-submenu-menu > li > a:hover {
		text-decoration: underline;
		font-weight: lighter;
		text-decoration: underline;
		transition: var(--ease);
	}

	/*コピーライト*/
	.copyright {
		display: block;
		width: 100%;
		font-size: 10px;
		line-height: 1;
		font-style: normal;
		text-align: center;
		color: #fff;
	}
	
	/*固定メニュー*/
	#fixedMenu {
		width: 100%;
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 100;
		opacity: 0;
		visibility: hidden;
	}
	#fixedMenu.fixed {
		opacity: 1;
		visibility: visible;
	}
	#fixedMenu > ul {
		padding: 0;
		margin: 0;
		list-style: none;
		background: var(--text);
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		flex-wrap: nowrap;
	}
	#fixedMenu > ul > li {
		width: 50%;
		padding: 0;
		margin: 0;
		position: relative;
	}
	#fixedMenu > ul > li a {
		display: flex;
		display: -webkit-flex;
		justify-content: center;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		width: 100%;
		padding: 12px;
		margin: 0;
	}
	#fixedMenu > ul > li:first-child a {
		background: var(--main);
	}
	#fixedMenu > ul > li:first-child  a img {
		width: auto;
		height: 15px;
		padding: 0;
		margin: 0 auto 5px;
	}
	#fixedMenu > ul > li:last-child  a img {
		width: auto;
		height: 13px;
		padding: 0;
		margin: 0 auto 7px;
	}
	#fixedMenu > ul > li a span {
		display: block;
		width: 100%;
		padding: 0;
		margin: 0 auto;
		text-align: center;
		font-size: 14px;
		line-height: 1;
		color: #fff;
	}
}

/************************************************************/
/*　アーカイブ　リスト
/************************************************************/

/************************************************************/
/*　リスト
/************************************************************/
#all_wrap .pageContents .content ul,
#all_wrap .postContents .content ul,
#all_wrap ul.disc {
    list-style: none;
    padding: 0;
    margin: 5px auto 20px;
}
#all_wrap .pageContents .content ul.center,
#all_wrap .postContents .content ul.center,
#all_wrap ul.disc.center {
	width: fit-content;
}
#all_wrap .pageContents .content ul li,
#all_wrap .postContents .content ul li,
#all_wrap ul.disc li {
	width: 100%;
    padding: 0 0 0 15px;
    margin: 0 0 10px;
    list-style: none;
    border: none;
    background: none;
    position: relative;
    line-height: 1.5em;
}
#all_wrap .pageContents .content ul.harf,
#all_wrap .postContents .content ul.harf {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
}
#all_wrap .pageContents .content ul.harf li,
#all_wrap .postContents .content ul.harf li {
	width: 48%;
}
#all_wrap .pageContents .content ul li:before,
#all_wrap .postContents .content ul li:before,
#all_wrap ul.disc li::before {
    content: '';
    display: block;
    width: 5px;
    height: 5px;
    padding: 0;
    margin: 0;
    background: var(--text);
    position: absolute;
    top: 0.7em;
    left: 0;
    transform: translate(0,-50%);
    -webkit-transform: translate(0,-50%);
    border-radius: 50%;
}

#all_wrap .pageContents .content ul.blue li {
	color: var(--sub);
	font-weight: 600;
}

#all_wrap .pageContents .content ol,
#all_wrap .postContents .content ol,
#all_wrap ol.decimal {
    list-style: none;
    padding: 0;
    margin: 5px auto 10px;
	counter-reset: count;
}
#all_wrap .pageContents .content ol li,
#all_wrap .postContents .content ol li,
#all_wrap ol.decimal li {
    padding: 0 0 0 30px;
    margin: 0 0 5px;
    list-style: none;
    border: none;
    background: none;
    position: relative;
	line-height: 1.8em;
}
#all_wrap .pageContents .content ol li:before,
#all_wrap .postContents .content ol li:before,
#all_wrap ol.decimal li::before {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
    counter-increment: count;
	content: counter(count);
    background: #fff;
    border: 1px solid var(--text);
    color: var(--text);
    width: 23px;
    height: 23px;
    line-height: 1;
    font-size: 0.8em;
    font-weight: 300;
    text-align: center;
    border-radius: 50%;
    position: absolute;
    top: 1.2em;
    left: 0;
    transform: translate(0,-50%);
    -webkit-transform: translate(0,-50%);
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#all_wrap .pageContents .content ul.harf li,
	#all_wrap .postContents .content ul.harf li {
		width: 100%;
		margin: 0 auto 10px
	}
	#all_wrap .pageContents .content ul.harf li:last-child,
	#all_wrap .postContents .content ul.harf li:last-child {
		margin-bottom: 0;
	}
}


/************************************************************/
/*　テーブル
/************************************************************/

/*表*/
#all_wrap table {
    overflow: hidden;
    table-layout: fixed;
    border: none;
    background: none;
    padding: 0;
    width: 100%;
    max-width: 100%;
    margin: 0 auto 50px;
	border-radius: 0;
	overflow: hidden;
	border-spacing: 10px;
}
#all_wrap table th {
    font-style: normal;
    font-feature-settings: "palt";
    border: none;
    border-bottom: none;
    text-align: center;
    vertical-align: middle;
    font-family: var(--font-jp);
    font-size: 15px;
    font-weight: 400;
	background: none;
	color: var(--main);
    padding: 20px;
    margin: 0;
    width: 25%;
	border-bottom: 2px solid var(--main);
}
#all_wrap table th.left {
	text-align: left;
}
#all_wrap table td {
	display: table-cell;
    border: none;
    background: none;
    vertical-align: inherit;
    border-bottom: none;
    padding: 20px;
    margin: 0;
    font-size: 15px;
    font-weight: 300;
	border-bottom: 1px solid #ddd;
}
#all_wrap .content table td > p:last-of-type {
	margin-bottom: 0;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
    /*表*/
    #all_wrap table {
        overflow: hidden;
        table-layout: fixed;
        border: none;
        background: #fff;
        padding: 0;
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
		border-top: 1px solid rgba(0,0,0,0.1);
		border-left: 1px solid rgba(0,0,0,0.1);
		border-right: 1px solid rgba(0,0,0,0.1);
		border-bottom: 1px solid rgba(0,0,0,0.1);
    }
    #all_wrap table th {
        font-style: normal;
        font-feature-settings: "palt";
        border: none;
        border-bottom: none;
        vertical-align: inherit;
        color: #fff;
		height: auto !important;
        padding: 10px 10px;
        margin: 0;
        border-bottom: none;
        width: 100%;
        min-width: 100%;
        font-size: 14px;
        display: block;
		text-align: center;
		background: var(--main);
    }
    #all_wrap table td {
        border: none;
        background: #fff;
        vertical-align: inherit;
        border-bottom: none;
        padding: 10px 15px 30px;
        margin: 0;
        border-bottom: none;
        font-size: 14px;
        width: 100%;
        min-width: 100%;
        display: block;
    }
	#all_wrap table td iframe {
		max-width: 100%;
		height: auto;
		aspect-ratio: 16 / 9 !important;
	}
	
	
	/*innerTable*/
	#all_wrap table.innerTable {
		overflow: hidden;
		table-layout: fixed;
		border: none;
		background: #fff;
		padding: 0;
		width: 170%;
		max-width: 170%;
		margin: 0 auto;
		border: none;
	}
	#all_wrap table.innerTable th {
		display: table-cell;
		font-style: normal;
		font-feature-settings: "palt";
		border: none;
		border-bottom: none;
		vertical-align: inherit;
		color: #fff;
		height: auto !important;
		padding: 10px 10px;
		margin: 0;
		border-bottom: 1px solid #ddd;
		font-size: 14px;
		text-align: center;
		background: var(--main);
	}
	#all_wrap table.innerTable td {
		display: table-cell;
		border: none;
		background: #fff;
		vertical-align: inherit;
		border-bottom: none;
		padding: 10px;
		margin: 0;
		border-bottom: 1px solid #ddd;
		font-size: 14px;
	}
	#all_wrap table.innerTable tr:first-of-type td:first-of-type {
		width: 30%;
	}
	#all_wrap table.innerTable td:last-of-type {
		width: 30%;
	}
}


/*=====================================*/
/* お問い合わせ タブ
/*=====================================*/

/*タブ*/
#tab_wrap {
	width: 100%;
	margin: 0 auto;
	background: none;
}
#tab_wrap input[type="radio"]#tab1,
#tab_wrap input[type="radio"]#tab2,
#tab_wrap input[type="radio"]#tab3,
#tab_wrap input[type="radio"]#tab4 {
	display: none;
}
#tab_wrap .tab_area {
	font-size: 0;
	margin: 0;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	flex-wrap: nowrap;
	position: relative;
	column-gap: 10px;
}
#tab_wrap .tab_area::after {
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #f6f6f6;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
#tab_wrap .tab_area label {
	width: 15%;
	margin: 0;
	display: inline-flex;
	display: -webkit-inline-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	padding: 15px;
	color: #c8c8c8;
	background: rgba(245,245,245,1);
	text-align: center;
	font-family: var(--font-jp2);
	font-size: 20px;
	line-height: 1.4em;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s ease;
	position: relative;
	border-radius: 5px 5px 0 0;
}
#tab_wrap .tab_area label::before {
	content: '';
	display: block;
	width: calc(100%);
	height: 1px;
	padding: 0;
	margin: 0;
	background: #ddd;
	position: absolute;
	bottom: -1px;
	left: 0;
	transition: all 0.3s ease;
}
#tab_wrap .tab_area label:hover {
	border-bottom: none;
	transition: all 0.3s ease;
}
#tab_wrap .panel_area {
	background-image: linear-gradient(to bottom, rgba(245,245,245,1), rgba(245,245,245,0));
	border-top: none;
	transition: all 0.3s ease;
	border-radius: 0 0 5px 5px;
}
#tab_wrap .tab_panel {
	width: 100%;
	padding: 50px;
	background-image: linear-gradient(to bottom, rgba(245,245,245,1), rgba(245,245,245,0));
	border-top: 1px solid #ddd;
	display: none;
	transition: all 0.3s ease;
}
#tab1:checked ~ .tab_area .tab1_label{ background: #f6f6f6; color: var(--main); border:1px solid #ddd; border-bottom: none; transition: all 0.3s ease; }
#tab1:checked ~ .panel_area #panel1{ display:block; transition: all 0.3s ease; }
#tab2:checked ~ .tab_area .tab2_label{ background:#f6f6f6; color: var(--main); border:1px solid #ddd; border-bottom: none; transition: all 0.3s ease; }
#tab2:checked ~ .panel_area #panel2{ display:block; transition: all 0.3s ease; }
#tab1:checked ~ .tab_area .tab1_label::before,
#tab2:checked ~ .tab_area .tab2_label::before {
	content: '';
	display: block;
	width: calc(100%);
	height: 1px;
	padding: 0;
	margin: 0;
	background: rgba(245,245,245,1);
	position: absolute;
	bottom: -1px;
	left: 0;
	transition: all 0.3s ease;
}
.normalLesson {
	display: block;
}
.studioLesson {
	display: none;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*タブ*/
	#tab_wrap {
		width: calc(100%);
		margin: 0 auto;
	}
	#tab_wrap .tab_area input[type="radio"]#tab1,
	#tab_wrap .tab_area input[type="radio"]#tab2,
	#tab_wrap .tab_area input[type="radio"]#tab3,
	#tab_wrap .tab_area input[type="radio"]#tab4 {
		display: none;
	}
	#tab_wrap .tab_area {
		font-size: 0;
		width: calc(100% - 20px);
		margin: 0 auto;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		flex-wrap: wrap;
		position: relative;
		column-gap: 10px;
	}
	#tab_wrap .tab_area::after {
		display: none;
	}
	#tab_wrap .tab_area label {
		width: 48.5%;
		margin: 0 0 10px;
		display: inline-flex;
		display: -webkit-inline-flex;
		justify-content: center;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		padding: 10px;
		color: var(--text);
		background: #f6f6f6;
		text-align: center;
		font-size: 14px;
		line-height: 1.4em;
		font-weight: 600;
		cursor: pointer;
		transition: all 0.3s ease;
		position: relative;
		border-radius: 5px;
	}
	#tab_wrap .tab_area label::before {
		display: none;
	}
	#tab_wrap .tab_area label:hover {
		border-bottom: none;
		transition: all 0.3s ease;
	}
	#tab_wrap .panel_area {
		background: #fff;
		border: 1px solid #f6f6f6;
		border-top: 1px solid #f6f6f6;
		transition: all 0.3s ease;
		border-radius: 5px;
	}
	#tab_wrap .tab_panel {
		width: 100%;
		padding: 30px 20px;
		display: none;
		transition: all 0.3s ease;
	}
	#tab1:checked ~ .tab_area .tab1_label{ background: var(--main); color: #fff; border: none; transition: all 0.3s ease; }
	#tab1:checked ~ .panel_area #panel1{ display:block; transition: all 0.3s ease; }
	#tab2:checked ~ .tab_area .tab2_label{ background: var(--main); color: #fff; border: none; transition: all 0.3s ease; }
	#tab2:checked ~ .panel_area #panel2{ display:block; transition: all 0.3s ease; }
	#tab3:checked ~ .tab_area .tab3_label{ background: var(--main); color: #fff; border: none; transition: all 0.3s ease; }
	#tab3:checked ~ .panel_area #panel3{ display:block; transition: all 0.3s ease; }
	#tab4:checked ~ .tab_area .tab4_label{ background: var(--main); color: #fff; border: none; transition: all 0.3s ease; }
	#tab4:checked ~ .panel_area #panel4{ display:block; transition: all 0.3s ease; }
	#tab1:checked ~ .tab_area .tab1_label::before,
	#tab2:checked ~ .tab_area .tab2_label::before,
	#tab3:checked ~ .tab_area .tab3_label::before,
	#tab4:checked ~ .tab_area .tab4_label::before {
		display: none;
	}

	#tab_wrap .tab_panel h2 {
		font-size: 2rem;
		line-height: 1.4em;
		font-weight: 600;
		width: 100%;
		padding: 0 0 15px;
		margin: 0 auto 10px;
		border: none;
		background: none;
		position: relative;
	}
	#tab_wrap .tab_panel h2 .sp {
		display: block;
	}
}

/************************************************************/
/*　お問い合わせ
/************************************************************/
#all_wrap .l-wrapper-full .content .contact_p {
	width: 100%;
	margin: 0 auto 50px;
	text-align: center;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#all_wrap .l-wrapper-full .content .contact_p {
		width: calc(100% - 60px);
		margin: 0 auto 30px;
		text-align: center;
	}
}

/************************************************************/
/*　お問い合わせ&テーブル
/************************************************************/
#contact_area {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
}
#contact_area > p {
	width: 100%;
	max-width: 950px;
	padding: 50px 0;
	margin: 0 auto;
	text-align: center;
}
/*電話番号*/
.tel_area {
	width: 100%;
	padding: 50px 0;
	margin: 0 auto 50px;
	position: relative;
	background: #f4f3ef;
	text-align: center;
}
#all_wrap .tel_area > p {
	text-align: center;
	padding: 0;
	margin: 0 auto;
}
#all_wrap .tel_area > tel {
	display: flex;
	display: -wekit-flex;
	justify-content: center;
	align-items: baseline;
	flex-wrap: nowrap;
	padding: 0;
	margin: 0 auto 5px;
}
#all_wrap .tel_area > tel small {
	display: inline-block;
	padding: 0;
	margin: 0 5px 0 0;
	font-size: 30px;
	line-height: 1;
	font-weight: lighter;
	color: var(--text);
}
#all_wrap .tel_area > tel a {
	display: inline-block;
	font-size: 60px;
	line-height: 1;
	font-weight: lighter;
	color: var(--text);
	transition: var(--ease);
	text-decoration: none;
}
#all_wrap .tel_area > tel a:hover {
	color: var(--sub);
	transition: var(--ease);
	text-decoration: none;
}
#all_wrap .tel_area > span {
	display: block;
	width: 100%;
	text-align: center;
	padding: 0;
	margin: 0 auto;
	font-size: 16px;
	line-height: 1;
}

#contactform_area {
	width: 100%;
	max-width: 800px;
	padding: 0;
	margin: 0 auto;
	position: relative;
}
#all_wrap .content #contactform_area > h2 {
	text-align: center;
	margin-bottom: 0;
	padding-bottom: 20px;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#contact_area {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
	}
	#all_wrap .l-wrapper-full .content #contact_area > p {
		width: 100%;
		max-width:  100%;
		padding: 30px 0;
		margin: 0 auto;
		text-align: center;
		line-height: 1.4em;
	}
	/*電話番号*/
	.tel_area {
		width: 100%;
		padding: 30px 0;
		margin: 0 auto 30px;
	}
	#all_wrap .l-wrapper-full .content .tel_area > p {
		text-align: center;
		padding: 0;
		margin: 0 auto;
	}
	#all_wrap .tel_area > tel {
		display: flex;
		display: -wekit-flex;
		justify-content: center;
		align-items: baseline;
		flex-wrap: nowrap;
		padding: 0;
		margin: 0 auto 5px;
	}
	#all_wrap .tel_area > tel small {
		display: inline-block;
		padding: 0;
		margin: 0 5px 0 0;
		font-size: 25px;
		line-height: 1;
		font-weight: lighter;
		color: var(--text);
	}
	#all_wrap .tel_area > tel a {
		display: inline-block;
		font-size: 40px;
		line-height: 1;
		font-weight: lighter;
		color: var(--text);
		transition: var(--ease);
		text-decoration: none;
	}
	#all_wrap .tel_area > tel a:hover {
		color: var(--sub);
		transition: var(--ease);
		text-decoration: none;
	}
	#all_wrap .tel_area > span {
		display: block;
		width: 100%;
		text-align: center;
		padding: 0;
		margin: 0 auto;
		font-size: 16px;
		line-height: 1;
	}

	#contactform_area {
		width: 100%;
		max-width: 100%;
		padding: 0 30px;
		margin: 0 auto 30px;
		position: relative;
	}
	#all_wrap .content #contactform_area > h2 {
		text-align: center;
		margin-bottom: 20px;
		padding-bottom: 10px;
	}
}

/*お問い合わせフォーム*/
#all_wrap table.table-contactform7 {
    border: none;
    background: none;
    padding: 0;
    margin: 0 auto 30px;
    width: 100%;
    border-top: none;
}
#all_wrap table.table-contactform7 tr {
    border: none;
    background: none;
    padding: 0;
    margin: 0;
}
#all_wrap table.table-contactform7 tr:last-of-type td {
	margin-bottom: 0;
}
#all_wrap table.table-contactform7 th {
    border: none;
    background: none;
    padding: 20px;
    margin: 0 auto 10px;
    color: var(--text);
    font-size: 16px;
    line-height: 1.4em;
    font-style: normal;
    font-feature-settings: "palt";
    width: 25%;
    font-family: var(--font-jp);
    font-weight: lighter;
    position: relative;
    box-shadow: none;
	text-align: left;
	vertical-align: middle;
	border-bottom: 1px solid #ddd;
}
#all_wrap table.table-contactform7 td {
    width: 75%;
    border: none;
    background: none;
    padding: 20px;
    margin: 0;
    color: var(--text);
	font-family: var(--font-jp);
	font-size: 16px;
    border-bottom: none;
    box-shadow: none;
	position: relative;
	border-bottom: 1px solid #ddd;
}
#all_wrap table.table-contactform7 td small {
    display: block;
    width: 100%;
    padding: 0;
    margin: 5px auto 0;
    text-align: left;
    font-size: 14px;
    color: #555;
}
#all_wrap table.table-contactform7 th .att {
    display: inline-flex;
	display: -webkit-inline-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
    padding: 5px 7px;
    margin: 0;
    background: var(--sub);
    border-radius: 0;
    font-size: 10px;
    line-height: 1;
    color: #fff;
    white-space: nowrap;
	margin-left: 20px;
	border-radius: 3px;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0,-50%);
	-webkit-transform: translate(0,-50%);
}
#all_wrap table.table-contactform7 .cf7-harf {
    border-right: 1px solid #fff;
}
#all_wrap table.table-contactform7 .addForm {
	display: block;
	padding: 0;
	margin: 0 auto 5px;
}
#all_wrap table.table-contactform7 .addForm:last-of-type {
	margin-bottom: 0;
}
#all_wrap table.table-contactform7 input {
    border-radius: 0;
    border: 1px solid #c8c8c8;
    box-shadow: none;
	font-size: 14px;
    padding: 15px;
}
#all_wrap table.table-contactform7 td.add span:first-of-type input {
    margin: 0 0 10px;
}
#all_wrap table.table-contactform7 input[type="file"] {
	border-radius: 0;
	border: none;
	box-shadow: none;
	font-size: 14px;
	padding: 0;
}
#all_wrap table.table-contactform7 input.wpcf7-text {
    width: 100%;
	padding: 15px;
    margin: 0;
    border-radius: 5px;
	border: 1px solid #c8c8c8;
    box-shadow: none;
    font-family: var(--font-jp);
    font-weight: 300;
    font-style: normal;
    font-feature-settings: "palt";
	font-size: 14px;
    line-height: 1;
	background: #fafafa;
    outline: none;
}
#all_wrap table.table-contactform7 input.wpcf7-text.w50 {
	width: 50%;
}
#all_wrap table.table-contactform7 input.wpcf7-text.w25 {
	width: 25%;
}
.wpcf7-form-control-wrap:last-of-type {
	margin-bottom: 0;
}
#all_wrap table.table-contactform7 input.wpcf7-date {
    padding: 9px;
    margin: 0;
    margin-right: 10px;
	font-size: 14px;
	background: #fff;
    outline: none;
	border-radius: 5px;
}
#all_wrap table.table-contactform7 select.wpcf7-form-control.wpcf7-select {
    width: 150px;
    height: 40px;
    line-height: 40px;
	padding: 15px;
    margin: 0;
	border-radius: 5px;
    border: none;
    box-shadow: none;
	font-size: 14px;
	background: #fff;
    outline: none;
}
#all_wrap table.table-contactform7 input.your-naiyou {
    display: inline;
    width: auto;
}
#all_wrap table.table-contactform7 label {
    line-height: 1.2em;
}
#all_wrap table.table-contactform7 .required-contactform7 {
    background: var(--color2);
    padding: 5px 10px;
    margin: 0 0 0 10px;
    border-radius: 0;
    display: inline-block;
    color: #fff;
	font-size: 14px;
    border-radius: 3px;
    line-height: 1;
}
#all_wrap table.table-contactform7 .wpcf7-list-item {
	padding: 15px;
    margin: 0 10px 10px 0;
	border: 1px solid #c8c8c8;
    vertical-align: middle;
	font-size: 14px;
    line-height: 1;
    font-weight: bold;
	background: #fafafa;
    outline: none;
	border-radius: 5px;
}
#all_wrap table.table-contactform7 .wpcf7-list-item input[type='radio'] {
    top: 2px;
    position: relative;
    outline: none;
}
#all_wrap table.table-contactform7 .wpcf7-list-item input[type='checkbox'] {
    top: 2px;
    position: relative;
    width: 14px;
    height: 14px;
    padding: 0;
    outline: none;
}
#all_wrap table.table-contactform7 textarea {
    width: 100%;
	padding: 15px;
    margin: 0;
    border-radius: 0;
	border: 1px solid #c8c8c8;
    box-shadow: none;
	font-size: 14px;
    line-height: 1;
	background: #fafafa;
    outline: none;
	border-radius: 5px;
}
#all_wrap .contactBox > p.txt_cent {
    text-align: center;
	padding: 0;
	margin: 0 auto;
}
#all_wrap .txt_cent input[type="submit"] {
    -webkit-appearance: none;
}
#all_wrap .txt_cent {
	text-align: center;
}
#all_wrap .txt_cent input {
    padding: 20px 100px;
    margin: 0 auto;
    display: inline-block;
    font-size: 15px;
    font-weight: 500;
    background: var(--text);
    border-radius: 40px;
    border: none;
    color: #fff;
    cursor: pointer;
    transition: 0.5s;
}
#all_wrap .txt_cent input:hover {
    transition: 0.5s;
	background: var(--sub);
}

#all_wrap .wpcf7 .ajax-loader {
    display: none;
}

.privacy_txt {
    text-align: center;
    padding: 0;
    margin: 0 auto 40px;
}

#all_wrap #confirm {
    width: 100%;
    max-width: 1100px;
    padding: 50px 0;
    margin: 0 auto;
}
#all_wrap #confirm h3 {
    text-align: center;
    width: 100%;
    margin: 0 auto 10px;
}
#all_wrap #confirm .confirm_box {
    padding: 20px 30px;
    margin: 0;
    background: #fafafa;
    border-radius: 10px;
    border: 1px solid #f5f5f5;
}
#all_wrap #confirm input[type=checkbox] {
    transform: scale(1.5);
    margin-right: 10px;
}
#all_wrap.txt_cent input[type="submit"]:disabled {
    background: #c8c8c8;
}

.wpcf7-spinner {
    display: none;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	
    #all_wrap table.table-contactform7 {
        border: none;
        background: none;
        padding: 0;
        margin: 0 auto;
        width: calc(100%);
        max-width: 100%;
        border: none;
        box-shadow: none;
    }
    #all_wrap table.table-contactform7 tr {
        display: -webkit-flex;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        border: none;
        background: none;
        padding: 0;
        margin: 0;
    }
    #all_wrap table.table-contactform7 th {
        border: none;
        background: none;
        padding: 0;
        margin: 0;
        color: var(--text);
        font-size: 15px;
        line-height: 1.4em;
        font-style: normal;
        font-feature-settings: "palt";
        width: 100%;
        font-family: var(--font-jp);
        font-weight: lighter;
        font-style: normal;
        font-feature-settings: "palt";
        display: -webkit-flex;
        display: flex;
        justify-content: flex-start;
        align-content: center;
        align-items: center;
        flex-wrap: nowrap;
        position: relative;
        border-bottom: none;
        box-shadow: none;
    }
	#all_wrap table.table-contactform7 th br {
		display: none;
	}
    #all_wrap table.table-contactform7 td {
        width: 100%;
        border: none;
        background: none;
        padding: 10px 0 20px;
        margin: 0;
        color: var(--text);
        font-size: 14px;
		font-weight: lighter;
        border-bottom: none;
        box-shadow: none;
    }
    #all_wrap table.table-contactform7 td small {
        display: block;
        width: 100%;
        padding: 0;
        margin: 5px auto 0;
        text-align: left;
        font-size: 0.7em;
        color: #555;
    }
    #all_wrap table.table-contactform7 th .att {
        display: inline-block;
        padding: 4px 7px;
        margin: 0 0 0 20px;
		background: var(--sub);
        border-radius: 0;
        font-size: 10px;
        line-height: 1;
        color: #fff;
        white-space: nowrap;
    }
    #all_wrap table.table-contactform7 .cf7-harf {
        border-right: 1px solid #fff;
    }
    #all_wrap table.table-contactform7 input {
        border-radius: 0;
        border: 1px solid #c8c8c8;
        box-shadow: none;
        font-size: 1em;
        padding: 10px;
    }
    #all_wrap table.table-contactform7 td.add span:first-of-type input {
        margin: 0 0 10px;
    }
    #all_wrap table.table-contactform7 input.wpcf7-text {
        width: 100%;
        padding: 15px;
        margin: 0;
		border-radius: 5px;
        border: none;
        box-shadow: none;
        font-weight: 300;
        font-style: normal;
        font-feature-settings: "palt";
        font-size: 1em;
        line-height: 1;
		background: #fafafa;
        outline: none;
    }
	#all_wrap table.table-contactform7 input.wpcf7-text.w50 {
		width: 100%;
	}
	#all_wrap table.table-contactform7 input.wpcf7-text.w25 {
		width: 50%;
	}
    #all_wrap table.table-contactform7 input.wpcf7-date {
        padding: 9px;
        margin: 0;
        margin-right: 10px;
        font-size: 1em;
		background: #DEDBDB;
        outline: none;
    }
    #all_wrap table.table-contactform7 select.wpcf7-form-control.wpcf7-select {
        width: 150px;
        height: 50px;
        line-height: 40px;
        padding: 15px;
        margin: 0;
        border-radius: 0;
        border: none;
        box-shadow: none;
        font-size: 1em;
		background: #DEDBDB;
        outline: none;
    }
    #all_wrap table.table-contactform7 input.your-naiyou {
        display: inline;
        width: auto;
    }
    #all_wrap table.table-contactform7 label {
        font-size: 1em;
        line-height: 1.2em;
    }
    #all_wrap table.table-contactform7 .required-contactform7 {
        background: #f44336;
        padding: 5px 10px;
        margin: 0 0 0 10px;
        border-radius: 0;
        display: inline-block;
        color: #fff;
        font-size: 10px;
        border-radius: 0;
        line-height: 1;
    }
    #all_wrap table.table-contactform7 .wpcf7-list-item {
        padding: 10px;
        margin: 0 10px 10px 0;
        border: none;
        vertical-align: middle;
		font-size: 1em;
        line-height: 1;
        font-weight: 500;
		background: #fafafa;
        outline: none;
    }
    #all_wrap table.table-contactform7 .wpcf7-list-item input[type='radio'] {
        top: 2px;
        position: relative;
        outline: none;
    }
    #all_wrap table.table-contactform7 .wpcf7-list-item input[type='checkbox'] {
        top: 2px;
        position: relative;
        width: 14px;
        height: 14px;
        padding: 0;
        outline: none;
    }
    #all_wrap table.table-contactform7 textarea {
        width: 100%;
        padding: 15px;
        margin: 0;
        border-radius: 5px;
        border: none;
        box-shadow: none;
        font-size: 1em;
        line-height: 1.4em;
		background: #fafafa;
        outline: none;
    }
    #all_wrap .txt_cent {
        text-align: center;
    }
    #all_wrap .txt_cent input[type="submit"] {
        -webkit-appearance: none;
    }
    #all_wrap .txt_cent input {
        width: calc(100% - 60px);
        padding: 15px 50px;
        margin: 0 auto;
        display: block;
        font-size: 15px;
        font-weight: 500;
        background: var(--text);
        border: none;
        color: #fff;
        cursor: pointer;
        transition: 0.5s;
    }
    #all_wrap .txt_cent input:hover {
        transition: 0.5s;
		background: var(--sub);
    }

    #all_wrap .wpcf7 .ajax-loader {
        display: none;
    }

    .privacy_txt {
        text-align: center;
        padding: 0;
        margin: 0 auto 40px;
    }

    #all_wrap #confirm {
        width: 100%;
        max-width: 1100px;
        padding: 50px 0;
        margin: 0 auto;
    }
    #all_wrap #confirm h3 {
        text-align: center;
        width: 100%;
        margin: 0 auto 10px;
    }
    #all_wrap #confirm .confirm_box {
        padding: 20px 30px;
        margin: 0;
        background: #fafafa;
        border-radius: 10px;
        border: 1px solid #f5f5f5;
    }
    #all_wrap #confirm input[type=checkbox] {
        transform: scale(1.5);
        margin-right: 10px;
    }
    #all_wrap.txt_cent input[type="submit"]:disabled {
        background: #c8c8c8;
    }

    .wpcf7-spinner {
        display: none;
    }
}

/*表削除*/
#all_wrap .pageContents .content .tablenone,
#all_wrap .postContents .content .tablenone {
    padding: 0;
    margin: 0;
    border-top: none;
    border-bottom: none;
    border-left: none;
    border-right: none;
    border-radius: none;
    background: none;
    color: var(--text);
}
#all_wrap .pageContents .content .tablenone tbody,
#all_wrap .pageContents .content .tablenone th,
#all_wrap .pageContents .content .tablenone td,
#all_wrap .pageContents .content .tablenone tr,
#all_wrap .pageContents .content .tablenone tr:nth-child(odd) td,
#all_wrap .pageContents .content .tablenone tr:nth-child(even) td {
    padding: 0;
    margin: 0;
    border-top: none;
    border-bottom: none;
    border-left: none;
    border-right: none;
    border-radius: none;
    background: none;
    color: var(--text);
}
#all_wrap .postContents .content .tablenone tbody,
#all_wrap .postContents .content .tablenone th,
#all_wrap .postContents .content .tablenone td,
#all_wrap .postContents .content .tablenone tr,
#all_wrap .postContents .content .tablenone tr:nth-child(odd) td,
#all_wrap .postContents .content .tablenone tr:nth-child(even) td {
    padding: 0;
    margin: 0;
    border-top: none;
    border-bottom: none;
    border-left: none;
    border-right: none;
    border-radius: none;
    background: none;
    color: var(--text);
}


/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
    
}


/************************************************************/
/*　Google Map
/************************************************************/
.google-maps {
    position: relative;
    padding-bottom: 30%;
    height: 0;
    overflow: hidden;
}
.google-maps iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}
.access_info p {
    font-size: 1.1em;
    line-height: 2em;
    margin-bottom: 20px;
    text-align: center;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
    .access_info p {
        width: 90%;
        padding: 0;
        margin: 0 auto;
        font-size: 1.1em;
        line-height: 2em;
        margin-bottom: 20px;
        text-align: center;
    }
    .top_gmap iframe {
        height: 200px;
    }
}



/************************************************************/
/*　全体
/************************************************************/


/************************************************************/
/*　サイトマップ
/************************************************************/
.sitemap ul {
    width: 100%;
    max-width: 1100px;
    padding: 0;
    margin: 0 auto;
}
.sitemap ul li {
    width: 100%;
    padding: 0;
    margin: 0;
    background: none;
    list-style: none;
}
.sitemap ul li a {
    display: block;
    padding: 20px 20px 20px 30px;
    margin: 0;
    font-family: var(--font-jp);
    font-size: 15px;
    font-weight: 500;
    line-height: 1;
    position: relative;
    transition: 0.5s;
	color: var(--text);
    border-bottom: 1px solid rgba(0,0,0,0.2);
}
.sitemap ul li a:hover {
    transition: 0.2s;
	color: var(--color2);
}
.sitemap ul li a::before {
    content: "";
    position: absolute;
    left: 10px;
    top: 50%;
    width: 5px;
    height: 5px;
	border-top: 1px solid rgba(0,0,0,0.2);
	border-right: 1px solid rgba(0,0,0,0.2);
    transform: translate(0,-50%) rotate(45deg);
    -webkit-transform: translate(0,-50%) rotate(45deg);
    transition: ease 0.2s;
}
.sitemap ul li a > span {
    display: none;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
    .sitemap ul {
        width: calc(100%);
        max-width: 100%;
        padding: 0;
        margin: 0 auto;
    }
	.sitemap ul .sub-menu {
		padding: 0 0 0 10px;
	}
}

/*スマホ改行
------------------------------------------------------------*/
	
.pc { display:block !important; }
.sp { display:none !important; }
@media screen and (max-width: 768px){   
	.pc { display:none !important; }
	.sp { display:block !important; }
}


/************************************************************/
/*　本文ギャラリー
/************************************************************/
#all_wrap .content .gallery {
    width: 80%;
    padding: 0;
    margin: 0 auto 100px;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#all_wrap .content .gallery dl {
    width: 31%;
    padding: 0;
    margin: 0 0 30px;
}
#all_wrap .content .gallery dt {
    padding: 5px 0;
    margin: 0;
    text-align: center;
}
#all_wrap .content .gallery dd {
    padding: 0;
    margin: 0;
    text-align: center;
}
#all_wrap .content .gallery dl img {
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
    #all_wrap .content .gallery {
        width: 100%;
        padding: 0;
        margin: 0 auto 50px;
        display: -webkit-flex;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    #all_wrap .content .gallery dl {
        width: 48%;
        padding: 0;
        margin: 0 0 20px;
    }
    #all_wrap .content .gallery dt {
        padding: 5px 0;
        margin: 0;
        text-align: center;
    }
    #all_wrap .content .gallery dd {
        padding: 0;
        margin: 0;
        text-align: center;
    }
    #all_wrap .content .gallery dl img {
        width: 100%;
        height: auto;
        padding: 0;
        margin: 0;
    }
}

/************************************************************/
/*　Youtube
/************************************************************/
#all_wrap .l-wrapper .youtubeBox {
    width:860px;              /*横幅いっぱいにwidthを指定*/
    padding-bottom: 56.25%;  /*高さをpaddingで指定(16:9)*/
    height:0px;              /*高さはpaddingで指定するためheightは0に*/
    position: relative;
    margin: 0 auto;
}
#all_wrap .l-wrapper .youtubeBox > iframe {
    position: static;
    top: auto;
    left: auto;
    width: 860px;
    height: 500px;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
    #all_wrap .l-wrapper .youtubeBox {
        width:100%;              /*横幅いっぱいにwidthを指定*/
        padding-bottom: 56.25%;  /*高さをpaddingで指定(16:9)*/
        height:0px;              /*高さはpaddingで指定するためheightは0に*/
        position: relative;
    }
    #all_wrap .l-wrapper .youtubeBox > iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
}


/************************************************************/
/*　アーカイブ
/************************************************************/
#all_wrap .archiveList {
    width: calc(100%);
    max-width: 1100px;
    padding: 0;
    margin: 0 auto;
    list-style: none;
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#all_wrap .archiveList::after {
    content: '';
    display: block;
    width: 31%;
}
#all_wrap .archiveList > li {
    width: 31%;
    padding: 0;
    margin: 0 0 40px;
}
#all_wrap .archiveList > li::before,
#all_wrap .archiveList > li::after {
    display: none;
}
#all_wrap .archiveList > li figure {
    width: 100%;
    padding: 0;
    margin: 0 auto 10px;
    position: relative;
    text-align: center;
    overflow: hidden;
	border-radius: 5px;
}
#all_wrap .archiveList > li figure::before {
    content: '';
    display: block;
    padding-top: 56.25%;
}
#all_wrap .archiveList > li figure img {
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    object-fit: cover;
}
#all_wrap .archiveList > li .date {
    display: inline-block;
    font-family: var(--font-en);
    font-size: 12px;
    font-weight: 500;
    line-height: 1em;
    color: #c8c8c8;
    font-style: normal;
    white-space: nowrap;
    padding: 0;
    margin: 0 0 5px;
}
#all_wrap .archiveList > li > h3,
#all_wrap .content .archiveList > li > h3 {
    padding: 0;
    margin: 0 auto 5px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4em;
    font-style: normal;
    border: none;
    background: none;
}
#all_wrap .archiveList > li > p {
	font-size: 14px;
	line-height: 1.7em;
	padding: 0;
	margin: 0;
	text-align: justify;
	text-justify: inter-ideograph;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#all_wrap .archiveList {
		width: calc(100%);
		max-width: 100%;
		padding: 0;
		margin: 0 auto;
		list-style: none;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	#all_wrap .archiveList::after {
		content: '';
		display: none;
	}
	#all_wrap .archiveList > li {
		width: 100%;
		padding: 0;
		margin: 0 auto 20px;
	}
	#all_wrap .archiveList > li::before,
	#all_wrap .archiveList > li::after {
		display: none;
	}
	#all_wrap .archiveList > li figure {
		width: 100%;
		padding: 0;
		margin: 0 auto 10px;
		position: relative;
		text-align: center;
		overflow: hidden;
		border-radius: 5px;
	}
	#all_wrap .archiveList > li figure::before {
		content: '';
		display: block;
		padding-top: 56.25%;
	}
	#all_wrap .archiveList > li figure img {
		width: 100%;
		height: 100%;
		padding: 0;
		margin: 0;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		-webkit-transform: translate(-50%,-50%);
		object-fit: cover;
	}
	#all_wrap .archiveList > li .date {
		display: inline-block;
		font-family: var(--font-en);
		font-size: 12px;
		font-weight: 500;
		line-height: 1em;
		color: #c8c8c8;
		font-style: normal;
		white-space: nowrap;
		padding: 0;
		margin: 0 0 5px;
	}
	#all_wrap .archiveList > li > h3,
	#all_wrap .content .archiveList > li > h3 {
		padding: 0;
		margin: 0 auto 5px;
		font-size: 15px;
		font-weight: 700;
		line-height: 1.4em;
		font-style: normal;
		border: none;
		background: none;
	}
	#all_wrap .archiveList > li > p {
		font-size: 14px;
		line-height: 1.7em;
		padding: 0;
		margin: 0;
		text-align: justify;
		text-justify: inter-ideograph;
	}
}

/************************************************************/
/*　記事詳細
/************************************************************/

/*目次*/
#all_wrap .toc {
	width: 100%;
	padding: 30px;
	margin: 0 auto 50px;
	position: relative;
	background: #f6f6f6;
	display: flex;
	display: -webkti-flex;
	justify-content: center;
	flex-wrap: nowrap;
}
#all_wrap .content .toc-title {
	width: 150px;
	padding: 0;
	margin: 0;
	display: flex;
	display: -webkti-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	font-size: 20px;
	line-height: 1;
	font-weight: 700;
	color: var(--gray);
}
#all_wrap .content .toc-toggle {
	display: block;
	width: 100%;
	padding: 0;
	margin: 10px auto 0;
	text-align: center;
	font-size: 12px;
	line-height: 1;
	font-weight: 400;
	color: var(--gray);
}
#all_wrap .toc-list {
	width: calc(100% - 150px);
	padding: 0 !important;
	margin: 0 !important;
	position: relative;
}
#all_wrap .toc-list > li {
	width: 100%;
	padding: 0 !important;
	margin: 0 auto 10px !important;
	position: relative;
}
#all_wrap .toc-list > li::before,
#all_wrap .toc-list > li::after {
	display: none !important;
}
#all_wrap .toc-list > li:last-child {
	margin-bottom: 0 !important;
}
#all_wrap .toc-list > li a {
	font-size: 16px;
	line-height: 1.4em;
	font-weight: 500;
	color: var(--gray);
	text-decoration: none;
	transition: var(--ease);
	display: inline-flex;
	display: -webkit-inline-flex;
	justify-content: flex-start;
	column-gap: 10px;
}
#all_wrap .toc-list > li a:hover {
	font-size: 16px;
	line-height: 1.4em;
	font-weight: 500;
	text-decoration: none;
	color: var(--link);
	transition: var(--ease);
}
#all_wrap .toc-list > li ul li a {
	font-size: 14px;
	line-height: 1.4em;
	font-weight: 400;
	color: var(--gray);
	text-decoration: none;
	transition: var(--ease);
	display: inline-flex;
	display: -webkit-inline-flex;
	justify-content: flex-start;
	column-gap: 10px;
}
#all_wrap .toc-list > li ul li a:hover {
	font-size: 14px;
	line-height: 1.4em;
	font-weight: 400;
	text-decoration: none;
	color: var(--link);
	transition: var(--ease);
}
.contentstable-number {
	display: inline-block;
	padding: 0;
	margin: 0;
	background: none;
	border: none;
	font-size: 16px;
	line-height: 1.4em;
	font-weight: 500;
	text-decoration: none;
}
.contentstable-number::after {
	content: ',';
	display: inline;
}
#all_wrap .toc-list > li ul li a .contentstable-number {
	font-size: 14px;
	font-weight: 400;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*目次*/
	#all_wrap .toc {
		width: 100%;
		padding: 20px;
		margin: 0 auto 30px;
		grid-row-gap: 10px;
		flex-wrap: wrap;
	}
	#all_wrap .l-wrapper .content .toc-title {
		width: 100%;
		font-size: 20px;
		margin: 0 auto 10px;
		color: var(--gray);
	}
	#all_wrap .l-wrapper .content .toc-toggle {
		display: block;
		width: auto;
		padding: 0;
		margin: 0;
		text-align: center;
		font-size: 12px;
		line-height: 1;
		font-weight: 400;
		color: var(--gray);
		position: absolute;
		top: 20px;
		right: 20px;
	}
	#all_wrap .toc-list {
		width: calc(100%);
		padding: 0;
		margin: 10px auto 0;
		position: relative;
	}
	#all_wrap .toc-list > li {
		width: 100%;
		padding: 0;
		margin: 0 auto 10px;
		position: relative;
	}
	#all_wrap .toc-list > li::before,
	#all_wrap .toc-list > li::after {
		display: none;
	}
	#all_wrap .toc-list > li:last-child {
		margin-bottom: 0;
	}
	#all_wrap .toc-list > li a {
		font-size: 15px;
	}
	#all_wrap .toc-list > li a:hover {
		font-size: 15px;
	}
	#all_wrap .toc-list > li ul li a {
		font-size: 13px;
	}
	#all_wrap .toc-list > li ul li a:hover {
		font-size: 13px;
	}
	.contentstable-number {
		font-size: 15px;
		margin: 0;
	}
	#all_wrap .toc-list > li ul li a .contentstable-number {
		font-size: 13px;
		font-weight: 400;
	}
}


/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
    .social-bottom {
        width: 90%;
        margin: 0 auto;
    }
}

/*関連記事*/
#all_wrap .related .heading-sub {
	width: 100%;
	padding: 10px 0;
	margin: 0 auto 20px;
	border-bottom: 2px solid var(--color2);
}
#all_wrap .related {
	max-width: 1000px;
	margin: 0 auto 50px;
}
#all_wrap .related__list {
    width: 100%;
    padding: 0;
    margin: 0 auto;
    list-style: none;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
}
#all_wrap .related__list li.related__item {
    width: 49%;
    border: 1px solid rgba(0,0,0,.1);
    padding: 15px;
    margin: 0 0 20px;
}
#all_wrap .related__list li.related__item .eyecatch {
    margin: 0;
}
#all_wrap .related__list li.related__item .dateList {
    margin: 0 auto 10px;
}
#all_wrap .related__list li.related__item h3.heading-secondary {
    font-size: 1em;
	margin-bottom: 5px;
}
#all_wrap .related__list li.related__item h3.heading-secondary a {
	transition: all 0.3s ease;
}
#all_wrap .related__list li.related__item h3.heading-secondary a:hover {
	transition: all 0.3s ease;
    color: var(--color1);
}
#all_wrap .related__list li.related__item p {
	padding: 0;
	margin: 0;
	font-size: 12px;
	line-height: 1.8em;
}
.eyecatch .eyecatch__link img {
	-webkit-filter:brightness(0.8);
	-moz-filter:brightness(0.8);
	-ms-filter:brightness(0.8);
	filter:brightness(0.8);
	transition: all 0.3s ease;
}
#all_wrap .related__list li:hover .eyecatch .eyecatch__link img {
	-webkit-filter:brightness(1);
	-moz-filter:brightness(1);
	-ms-filter:brightness(1);
	filter:brightness(1);
	transition: all 0.3s ease;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#all_wrap .related {
		margin: 0 auto;
	}
    #all_wrap .related > h2 {
        width: 90%;
        margin: 0 auto 10px;
    }
    #all_wrap .related > p.related__contents {
        width: 90%;
        margin: 0 auto;
    }
    #all_wrap .related__list li.related__item {
        width: 100%;
        border: 1px solid rgba(0,0,0,.1);
        padding: 10px;
        margin: 0 auto 10px;
    }
	#all_wrap .related__list li.related__item p {
		padding: 0;
		margin: 0;
		font-size: 10px;
		line-height: 1.4em;
	}
}

/************************************************************/
/*　ブログ　詳細＆サイドバー 
/************************************************************/


/*前後の記事*/
#all_wrap .prevNext {
    width: 100%;
    padding: 0;
    margin: 0 auto;
}
#all_wrap .prevNext__pop {
    background-color: var(--text);
}
#all_wrap .eyecatch {
    background: var(--text);
}
#all_wrap .heading-secondary {
    color: var(--text);
}
#all_wrap .prevNext__text {
    padding: 0;
    margin: 0;
    color: var(--text);
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
    /*前後の記事*/
    #all_wrap .prevNext {
        width: 90%;
        padding: 0;
        margin: 0 auto;
    }
}

/*プロフィール*/
#all_wrap .profile {
    border: none;
    margin-top: 0;
    padding: 20px;
    background: var(--text);
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    align-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
}
#all_wrap .profile__text {
    background: none;
    font-size: 15px;
    padding: 0 0 0 13px;
    margin-bottom: 15px;
    margin-top: 40px;
    border-left: 2px solid #d3c8a8;
    font-style: italic;
    text-align: left;
    color: #d3c8a8;
}
#all_wrap .profile__contents {
    width: 80%;
    padding: 0;
    margin: 0;
}
#all_wrap .profile__name {
    color: #d3c8a8;
    font-size: 19px;
    line-height: 1.4em;
    font-style: italic;
    padding: 0 0 10px;
    margin: 0 auto 10px;
    border-bottom: 1px solid #d3c8a8;
}
#all_wrap .profile__author {
    width: 15%;
    text-align: left;
    padding: 0;
    margin: 0 20px 0 0;
}
#all_wrap .profile__author img {
    width: 100%;
    height: auto;
    margin: 0;
}
#all_wrap .profile__list {
    display: none;
}
#all_wrap .profile__description {
    padding: 0;
    margin: 0;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
    /*プロフィール*/
    #all_wrap .profile {
        border: none;
        margin-top: 0;
        padding: 20px;
        background: var(--text);
        display: -webkit-flex;
        display: flex;
        justify-content: space-between;
        align-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
    }
    #all_wrap .profile__text {
        background: none;
        font-size: 15px;
        padding: 0 0 0 13px;
        margin-bottom: 15px;
        margin-top: 40px;
        border-left: 2px solid #d3c8a8;
        font-style: italic;
        text-align: left;
        color: #d3c8a8;
    }
    #all_wrap .profile__contents {
        width: 80%;
        padding: 0;
        margin: 0;
    }
    #all_wrap .profile__name {
        color: #d3c8a8;
        font-size: 19px;
        line-height: 1.4em;
        font-style: italic;
        padding: 0 0 10px;
        margin: 0 auto 10px;
        border-bottom: 1px solid #d3c8a8;
    }
    #all_wrap .profile__author {
        width: 15%;
        text-align: left;
        padding: 0;
        margin: 0 0 0 0;
    }
    #all_wrap .profile__author img {
        width: 100%;
        height: auto;
        margin: 0;
    }
    #all_wrap .profile__list {
        display: none;
    }
    #all_wrap .profile__description {
        padding: 0;
        margin: 0;
    }
}

/************************************************************/
/*　共通
/************************************************************/

/*タイトル*/
#all_wrap header.ttl {
	width: 100%;
	max-width: 1080px;
	padding: 50px 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 30px;
	z-index: 0;
}
#all_wrap header.ttl::before {
	content: '';
	display: block;
	width: 90px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#all_wrap header.ttl::after {
	content: '';
	display: block;
	width: 500vw;
	margin: auto;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #ECECEC;
	position: absolute;
	bottom: 0;
	left: -100%;
	right: -100%;
	z-index: -1;
}
#all_wrap header.ttl > em {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 90px;
	line-height: 1;
	font-style: normal;
	white-space: nowrap;
}
#all_wrap header.ttl > h2 {
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
	font-size: 20px;
	line-height: 1;
}
#all_wrap header.ttl > h2::before,
#all_wrap header.ttl > h2::after {
	display: none;
}
#all_wrap header.ttl > span {
	display: block;
	width: calc(100vw + 200px);
	height: 190px;
	overflow: hidden;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 300px;
	line-height: 190px;
	text-align: right;
	text-transform: uppercase;
	color: #F7F7F7;
	white-space: nowrap;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: -1;
}

/*タイトル 中央*/
#all_wrap header.ttl.center {
	padding: 30px 0 50px;
	margin: 0 auto;
	justify-content: center;
	flex-wrap: wrap;
	column-gap: 0;
}
#all_wrap header.ttl.center::before {
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: 1;
}
#all_wrap header.ttl.center > em {
	display: block;
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
#all_wrap header.ttl.center > h2 {
	text-align: center;
}
#all_wrap header.ttl.center > span {
	text-align: center;
}

/*タイトル下マージン*/
#all_wrap header.ttl.mb50 { margin-bottom: 50px; }
#all_wrap header.ttl.mb100 { margin-bottom: 100px; }

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*タイトル*/
	#all_wrap header.ttl {
		width: 100%;
		max-width: 100%;
		padding: 20px 0;
		margin: 0 auto;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		column-gap: 10px;
		z-index: 0;
	}
	#all_wrap header.ttl::before {
		content: '';
		display: block;
		width: 50px;
		height: 1px;
		padding: 0;
		margin: 0;
		background: var(--main);
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: 1;
	}
	#all_wrap header.ttl::after {
		content: '';
		display: block;
		width: 500vw;
		margin: auto;
		height: 1px;
		padding: 0;
		margin: 0;
		background: #ECECEC;
		position: absolute;
		bottom: 0;
		left: -100%;
		right: -100%;
		z-index: -1;
	}
	#all_wrap header.ttl > em {
		display: block;
		padding: 0;
		margin: 0 auto;
		font-family: var(--font-en);
		font-size: 35px;
		line-height: 1;
		font-style: normal;
		white-space: nowrap;
		text-align: center;
	}
	#all_wrap header.ttl > h2 {
		padding: 0;
		margin: 0;
		border: none;
		background: none;
		position: relative;
		font-size: 14px;
		line-height: 1;
		text-align: center;
	}
	#all_wrap header.ttl > h2::before,
	#all_wrap header.ttl > h2::after {
		display: none;
	}
	#all_wrap header.ttl > span {
		display: block;
		width: calc(100vw + 200px);
		height: 57px;
		overflow: hidden;
		padding: 0;
		margin: 0;
		font-family: var(--font-en);
		font-size: 80px;
		line-height: 65px;
		text-align: center;
		text-transform: uppercase;
		color: #F7F7F7;
		white-space: nowrap;
		position: absolute;
		top: unset;
		bottom: 0;
		left: 50%;
		transform: translate(-50%,0);
		-webkit-transform: translate(-50%,0);
		z-index: -1;
	}

	/*タイトル 中央*/
	#all_wrap header.ttl.center {
		padding: 20px 0;
		column-gap: 0;
	}
	
	/*タイトル下マージン*/
	#all_wrap header.ttl.mb50 { margin-bottom: 30px; }
	#all_wrap header.ttl.mb100 { margin-bottom: 30px; }
}

/*emタイトル*/
#all_wrap .emttl {
	display: block;
	width: 100%;
	padding: 0 0 20px;
	margin: 0 auto 15px;
	text-align: left;
	font-size: 18px;
	line-height: 1;
	font-weight: 500;
	font-style: normal;
	color: var(--main);
	font-family: var(--font-en);
	position: relative;
}
#all_wrap .emttl::after {
	content: '';
	display: block;
	width: 40px;
	height: 2px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: 0;
	left: 0;
}

/*inner*/
.inner {
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
}
.inner.full {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
}
.inner.wide {
	width: 90%;
	max-width: 1080px;
	margin: 0 auto;
}
/*inner p*/
.inner p {
	text-align: justify;
	text-justify: inter-ideograph;
}
.inner p.center {
	text-align: center;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*inner*/
	.inner {
		width: calc(100% - 60px);
		max-width: 100%;
		margin: 0 auto;
	}
	.inner.full {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
	}
	.inner.wide {
		width: calc(100% - 60px);
		max-width: 100%;
		margin: 0 auto;
	}
}

/*パララックス*/
.plx {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	width: 100vw;
	padding: 150px 0;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	position: relative;
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: fixed;
	min-height: 300px;
}
.plx::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	background: #283847;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0.5;
	z-index: 1;
}
.plx > .bg {
	display: block;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/09/plx_bg.webp');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
#all_wrap .plx > h2,
#all_wrap .plx > h3,
#all_wrap .plx > p {
	color: #fff !important;
	z-index: 3;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*パララックス*/
	.plx {
		width: 100%;
		padding: 50px 0;
		left: unset;
		right: unset;
		margin-left: unset;
		margin-right: unset;
		position: relative;
		background-repeat: no-repeat;
		background-size: cover;
		background-attachment: fixed;
		min-height: auto;
	}
	.plx > .bg {
		display: block;
		width: 100%;
		height: 100%;
		padding: 0;
		margin: 0;
		background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/09/plx_bg.webp');
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
		background-attachment: unset;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 0;
	}
}

/*inner figure*/
.inner figure.center {
	text-align: center;
}

/*mt*/
.mt10 { margin-top: 10px !important; }
.mt20 { margin-top: 20px !important; }
.mt30 { margin-top: 30px !important; }
.mt40 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }
.mt100 { margin-top: 100px !important; }

/*フレックス*/
.flex {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	column-gap: 50px;
}
.flex.top {
	align-content: flex-start;
	align-items: flex-start;
}
.flex.mid {
	align-content: center;
	align-items: center;
}
.flex.btm {
	align-content: flex-end;
	align-items: flex-end;
}
.flex.rev > div:first-of-type {
	order: 1;
}
.flex p {
	text-align: justify;
	text-justify: inter-ideograph;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	.flex.spwrap {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 20px;
	}
	.flex.spwrap > div {
		width: 100%;
	}
	.flex.spwrap > figure {
		width: 100%;
		text-align: center;
	}
	.flex.spwrap > .sporder1 {
		order: 1;
	}
}

/*チェックリスト*/
#all_wrap .content ul.check {
	list-style: none;
	padding: 0;
	margin: 5px auto 20px;
}
#all_wrap .content ul.check.center {
	width: fit-content;
}
#all_wrap .content ul.check li {
	width: 100%;
	padding: 0 0 0 25px;
	margin: 0 0 10px;
	list-style: none;
	border: none;
	background: none;
	position: relative;
	line-height: 1.5em;
}
#all_wrap .content ul.check li:last-child {
	margin-bottom: 0;
}
#all_wrap .content ul.check li::before {
	content: '';
	display: block;
	width: 15px;
	height: 15px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	top: 0.75em;
	left: 0;
	border-radius: 0;
}
#all_wrap .content ul.check li::after {
	content: '';
	display: block;
	width: 10px;
	height: 5px;
	padding: 0;
	margin: 0;
	background: none;
	border-left: 1px solid #Fff;
	border-bottom: 1px solid #fff;
	position: absolute;
	top: 0.5em;
	left: 2.5px;
	transform: rotate(-45deg);
	border-radius: 0;
}

/*注釈リスト*/
#all_wrap .content .refList {
	list-style: none;
	padding: 0;
	margin: 5px auto 20px;
}
#all_wrap .content .refList > li {
	width: 100%;
	padding: 0 0 0 20px;
	margin: 0 0 10px;
	list-style: none;
	border: none;
	background: none;
	position: relative;
	line-height: 1.5em;
}
#all_wrap .content .refList > li::before {
	content: '※';
	display: block;
	width: 15px;
	height: 15px;
	padding: 0;
	margin: 0;
	background: none;
	position: absolute;
	top: 0.5em;
	left: 0;
	border-radius: 0;
	font-size: 1em;
	color: var(--text);
}

/*ボタン*/
.moreBtn {
	display: flex;
	display: -webkit-flex;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	column-gap: 20px;
	grid-row-gap: 20px;
	padding: 0;
	margin: 0;
}
.moreBtn.left {
	justify-content: flex-start;
}
.moreBtn.right {
	justify-content: flex-end;
}
.moreBtn.center {
	justify-content: center;
}
.moreBtn > a {
	display: inline-flex;
	display: -webkit-inline-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	padding: 20px 40px 20px 55px;
	margin: 0;
	background: var(--main);
	font-family: var(--font-jp2);
	font-size: 16px;
	line-height: 1;
	color: #fff !important;
	text-decoration: none !important;
	position: relative;
	transition: var(--ease-inout);
	white-space: nowrap;
}
.moreBtn > a::before {
	content: '';
	display: block;
	width: 12px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #fff;
	position: absolute;
	top: 50%;
	left: 30px;
	transition: var(--ease);
}
.moreBtn > a:hover {
	opacity: 0.9;
	transition: var(--ease);
}
.moreBtn > a:hover::before {
	background: var(--sub);
	width: 30px;
	left: calc(100% - 15px);
	transition: var(--ease);
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	.moreBtn > a {
		display: inline-flex;
		display: -webkit-inline-flex;
		justify-content: center;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		padding: 20px 40px 20px 55px;
		margin: 0;
		background: var(--main);
		font-family: var(--font-jp2);
		font-size: 15px;
		line-height: 1;
		color: #fff !important;
		text-decoration: none !important;
		position: relative;
		transition: var(--ease-inout);
	}
	.inner .moreBtn {
		max-width: calc(100% - 60px);
		margin: 0 auto;
	}
	.inner .moreBtn > a {
		display: block;
		width: 100%;
		font-size: 15px;
		padding: 15px 20px 15px 55px;
		text-align: left;
	}
}

/*データテーブル*/
#all_wrap .dataTable {
	width: 100%;
	padding: 0;
	margin: 0 auto 20px;
	position: relative;
	border: none;
	background: none;
	border-top: 1px solid var(--main);
	border-left: 1px solid var(--main);
}
#all_wrap .dataTable th {
	padding: 10px;
	margin: 0;
	position: relative;
	border: none;
	background: var(--main);
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #fff;
	font-size: 15px;
	font-weight: 300;
	line-height: 1.4em;
	color: #fff;
	text-align: center;
}
#all_wrap .dataTable th:first-of-type {
	width: 50%;
}
#all_wrap .dataTable td {
	padding: 10px;
	margin: 0;
	position: relative;
	border: none;
	background: #fff;
	border-bottom: 1px solid #ddd;
	border-right: 1px solid var(--main);
	font-size: 15px;
	font-weight: 300;
	line-height: 1.4em;
	text-align: center;
}
#all_wrap .dataTable tr:nth-of-type(odd) td {
	background: #fafafa;
}
#all_wrap .dataTable td:first-of-type {
	text-align: left;
}
#all_wrap .dataTable tr:last-of-type td {
	border-bottom: 1px solid var(--main);
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*データテーブル*/
	#all_wrap .dataTable {
		width: 200%;
		min-width: 200%;
		padding: 0;
		margin: 0 auto 20px;
		position: relative;
		border: none;
		background: none;
		border-top: 1px solid var(--main);
		border-left: 1px solid var(--main);
	}
	#all_wrap .dataTable th {
		display: table-cell;
		padding: 10px;
		margin: 0;
		position: relative;
		border: none;
		background: var(--main);
		border-bottom: 1px solid #ddd;
		border-right: 1px solid #fff;
		font-size: 15px;
		font-weight: 300;
		line-height: 1.4em;
		color: #fff;
		text-align: center;
	}
	#all_wrap .dataTable th:first-of-type {
		width: 180%;
	}
	#all_wrap .dataTable td {
		display: table-cell;
		padding: 10px;
		margin: 0;
		position: relative;
		border: none;
		background: #fff;
		border-bottom: 1px solid #ddd;
		border-right: 1px solid var(--main);
		font-size: 15px;
		font-weight: 300;
		line-height: 1.4em;
		text-align: center;
	}
	#all_wrap .dataTable tr:nth-of-type(odd) td {
		background: #fafafa;
	}
	#all_wrap .dataTable td:first-of-type {
		text-align: left;
	}
	#all_wrap .dataTable tr:last-of-type td {
		border-bottom: 1px solid var(--main);
	}
}

/*全幅フレックス*/
.fullflex {
	width: 100%;
	padding: 0;
	margin: 0 auto 70px;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	position: relative;
}
.fullflex.mt100 {
	margin-top: 100px;
}
/* - 情報*/
.fullflex > .info {
	width: calc(50% - 25px);
	padding: 100px;
	margin: 0;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	order: 1;
}
.fullflex.rev > .info {
	order: 0;
}
.fullflex > .info.ptb0 {
	padding: 0 100px;
}
.fullflex > .info > em {
	display: block;
	width: 100%;
	padding: 0 0 20px;
	margin: 0 auto 40px;
	position: relative;
	font-family: var(--font-en);
	font-size: 20px;
	line-height: 1;
	font-style: normal;
	color: var(--main);
}
.fullflex > .info > em::after {
	content: '';
	display: block:;
	width: 40px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: 0;
	left: 0;
}
#all_wrap .fullflex > .info > h2 {
	width: 100%;
	padding: 0;
	margin: 0 auto 40px;
	position: relative;
	border: none;
	background: none;
	font-size: 40px;
	line-height: 1.4em;
}
#all_wrap .fullflex > .info > h2::before,
#all_wrap .fullflex > .info > h2::after {
	display: none;
}
#all_wrap .fullflex > .info > h3 {
	width: 100%;
	margin-right: 0;
	margin-left: 0;
}
#all_wrap .fullflex > .info > ul {
	margin-right: 0;
	margin-left: 0;
}
#all_wrap .fullflex > .info > p {
	width: 100%;
	padding: 0;
	margin: 0 auto 10px;
	text-align: justify;
	text-justify: inter-ideograph;
}
/* - 画像*/
.fullflex > figure {
	width: calc(50% + 25px);
	padding: 100px;
	margin: 0;
	position: relative;
	overflow: hidden;
	text-align: center;
	box-shadow: 5px 5px 40px rgba(211,211,211,.6), -10px -10px 40px rgba(255,255,255,.7);
}
.fullflex > figure::before {
	content: '';
	display: block;
	padding-top: 75%;
}
.fullflex > figure img {
	width: calc(100% - 200px);
	height:  calc(100% - 200px);
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	object-fit: cover
}

/*上揃え*/
.fullflex.top {
	align-content: flex-start;
	align-items: flex-start;
}
.fullflex.top > .info {
	padding-top: 0;
	padding-bottom: 0;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*全幅フレックス*/
	.fullflex {
		width: 100%;
	}
	.fullflex.mt100 {
		margin-top: 50px !important;
	}
	/* - 情報*/
	.fullflex > .info {
		width: 100%;
		padding: 30px 30px 0;
		margin: 0;
		position: relative;
		display: block;
		order: 1;
	}
	.fullflex > .info.ptb0 {
		padding: 30px;
	}
	.fullflex.rev > .info {
		order: 1;
	}
	.fullflex > .info > em {
		display: block;
		width: 100%;
		padding: 0 0 10px;
		margin: 0 auto 20px;
		position: relative;
		font-family: var(--font-en);
		font-size: 20px;
		line-height: 1;
		font-style: normal;
		color: var(--main);
	}
	.fullflex > .info > em::after {
		content: '';
		display: block;
		width: 40px;
		height: 1px;
	}
	#all_wrap .fullflex > .info > h2 {
		margin: 0 auto 10px;
		font-size: 25px;
	}
	#all_wrap .fullflex > .info > h2::before,
	#all_wrap .fullflex > .info > h2::after {
		display: none;
	}
	#all_wrap .fullflex > .info > p {
		width: 100%;
		padding: 0;
		margin: 0 auto 10px;
		text-align: justify;
		text-justify: inter-ideograph;
	}
	/* - 画像*/
	.fullflex > figure {
		width: calc(100% - 30px);
		padding: 0;
		margin: 0;
		position: relative;
		overflow: hidden;
		text-align: center;
		box-shadow: 5px 5px 40px rgba(211,211,211,.6), -10px -10px 40px rgba(255,255,255,.7);
	}
	.fullflex.rev > figure {
		width: calc(100% - 30px);
		padding: 0;
		margin: 0 0 0 auto;
		position: relative;
		overflow: hidden;
		text-align: center;
		box-shadow: 5px 5px 40px rgba(211,211,211,.6), -10px -10px 40px rgba(255,255,255,.7);
	}
	.fullflex > figure::before {
		content: '';
		display: block;
		padding-top: 60%;
	}
	.fullflex > figure img {
		width: calc(100%);
		height: auto;
		padding: 0;
		margin: 0;
		position: absolute;
		top: -20px;
		left: 50%;
		transform: translate(-50%,0);
		object-fit: cover;
	}
	
	/*上揃え*/
	.fullflex.top {
		align-content: center;
		align-items: center;
	}
	.fullflex.top > .info {
		padding: 30px 30px 0;
	}
}

/*太字*/
b.blue {
	color: #55bff8;
}
b.red {
	color: #a82216;
}

/*バナー*/
#all_wrap .pageContents .content .imageBtn {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	column-gap: 30px;
	grid-row-gap: 30px;
}
#all_wrap .pageContents .content .imageBtn.center {
	width: 100%;
	justify-content: center;
}
#all_wrap .pageContents .content .imageBtn::after {
	content: '';
	display: block;
	width: calc(100% / 3 - 20px);
}
#all_wrap .pageContents .content .imageBtn.center::after {
	display: none;
}
#all_wrap .pageContents .content .imageBtn > li {
	width: calc(100% / 3 - 20px);
	padding: 0;
	margin: 0;
	position: relative;
	text-align: center;
	overflow: hidden;
	border: none;
	background: none;
	z-index: 0;
}
#all_wrap .pageContents .content .imageBtn > li > a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
#all_wrap .pageContents .content .imageBtn > li::before {
	content: '';
	display: block;
	padding: 0;
	padding-top: 65%;
	position: relative;
	top: unset;
	left: unset;
	border-radius: 0;
	transform: unset;
	width: unset;
	height: unset;
	margin: 0;
	background: none;
}
#all_wrap .pageContents .content .imageBtn > li figure {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	overflow: hidden;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
}
#all_wrap .pageContents .content .imageBtn > li figure img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	object-fit: cover;
}
#all_wrap .pageContents .content .imageBtn > li > h3 {
	width: 100%;
	padding: 15px 15px;
	margin: 0;
	background: rgba(40,73,119,0.8);
	font-size: 16px;
	line-height: 1;
	font-weight: 500;
	color: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	text-align: center;
	transition: var(--ease);
}
#all_wrap .pageContents .content .imageBtn > li > h3::after {
	content: '';
	display: block;
	width: 5px;
	height: 5px;
	padding: 0;
	margin: 0;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translate(0,-50%) rotate(45deg);
	-webkit-transform: translate(0,-50%) rotate(45deg);
	transition: var(--ease);
	opacity: 0;
}
#all_wrap .pageContents .content .imageBtn > li:hover > h3 {
	background: rgba(40,73,119,1);
	transition: var(--ease);
}
#all_wrap .pageContents .content .imageBtn > li:hover > h3::after {
	opacity: 1;
	right: 12px;
	transition: var(--ease);
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#all_wrap .pageContents .content .imageBtn {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
		list-style: none;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 15px;
	}
	#all_wrap .pageContents .content .imageBtn > li {
		width: calc(100%);
		padding: 0;
		margin: 0;
		position: relative;
		text-align: center;
		overflow: hidden;
		border: none;
		background: none;
		z-index: 0;
	}
}

/************************************************************/
/*　トップ　紹介
/************************************************************/
#topAbout {
	width: 100%;
	padding: 150px 0;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	z-index: 0;
}
#topAbout::after {
	content: 'Training Results';
	display: block;
	padding: 0;
	margin: 0;
	font-family: var(--font-jp2);
	font-size: 250px;
	line-height: 1;
	color: #ECECEC;
	text-transform: uppercase;
	white-space: nowrap;
	position: absolute;
	bottom: 250px;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: -1;
	opacity: 0.5;
}
.topAboutWrap {
	width: 100%;
	max-width: 960px;
	min-width: 960px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 100px;
	z-index: 0;
}
/*情報*/
.topAboutInfo {
	padding: 0;
	margin: 0;
	position: relative;
	order: 1;
}
#all_wrap .topAboutInfo > h2 {
	padding: 0 0 40px;
	margin: 0 0 40px;
	background: none;
	border: none;
	position: relative;
	font-size: 33px;
	line-height: 1.4em;
	text-align: left;
	z-index: 0;
}
#all_wrap .topAboutInfo > h2::before {
	content: '';
	display: block;
	width: 90px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#all_wrap .topAboutInfo > h2::after {
	content: '';
	display: block;
	width: 500vw;
	margin: auto;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #ECECEC;
	position: absolute;
	bottom: 0;
	left: -200%;
	right: -200%;
	z-index: -1;
}
#all_wrap .topAboutInfo > strong {
	display: block;
	padding: 0;
	margin: 0 0 20px;
	font-size: 25px;
	line-height: 1.5em;
	text-align: left;
}
#all_wrap .topAboutInfo > p {
	font-size: 15px;
	line-height: 2em;
	padding: 0;
	margin: 0;
	text-align: justify;
	text-justify: inter-ideograph;
}

/*画像*/
.topAboutWrap > figure {
	width: 420px;
	padding: 0;
	margin: 0;
	position: relative;
	filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.1));
	z-index: 1;
}
.topAboutWrap > figure img {
	width: 100%;
	height: auto;
}
/*装飾*/
.ttlScroll {
	display: block;
	padding: 0;
	margin: 0;
	position: absolute;
	top: -25px;
	left: -25px;
	z-index: 5;
	font-family: var(--font-en);
	font-size: 14px;
	line-height: 1.4em;
	color: var(--main);
	text-align: left;
	text-transform: uppercase;
}
.ttlScroll:before {
	content: "";
	position: absolute;
	top: -30px;
	left: -20px;
	width: 1px;
	height: 30px;
	background: var(--main);
	animation: ttlScroll 3s ease-in-out infinite, ttlScrollHide 3s ease-out infinite;
}
.ttlScroll:after{
	content: "";
	position: absolute;
	top: -30px;
	left: -20px;
	width: 1px;
	height: 60px;
	background: var(--main);
	opacity: 0.3;
}
@keyframes ttlScroll {
	0%{ top: -30px; }
	90%{ top: 0; }
	100%{ top: 0; }
}
@keyframes ttlScrollHide {
	0%{ opacity:0 }
	50%{ opacity:1; }
	90%{ opacity:1; }
	100%{ opacity:0; }
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#topAbout {
		width: 100%;
		padding: 60px 0;
	}
	#topAbout::after {
		content: 'Training Results';
		display: block;
		padding: 0;
		margin: 0;
		font-family: var(--font-jp2);
		font-size: 100px;
		line-height: 1;
		color: #ECECEC;
		text-transform: uppercase;
		white-space: nowrap;
		position: absolute;
		bottom: 200px;
		left: 50%;
		transform: translate(-50%,0);
		-webkit-transform: translate(-50%,0);
		z-index: -1;
		opacity: 0.5;
	}
	.topAboutWrap {
		width: 100%;
		max-width: 100%;
		min-width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		column-gap: 0;
		z-index: 0;
	}
	/*情報*/
	.topAboutInfo {
		width: 100%;
		padding: 0 30px;
		margin: 0;
		position: relative;
		order: 1;
	}
	#all_wrap .topAboutInfo > h2 {
		padding: 0 0 20px;
		margin: 0 0 20px;
		font-size: 27px;
	}
	#all_wrap .topAboutInfo > h2::before {
		width: 50px;
	}
	#all_wrap .topAboutInfo > strong {
		margin: 0 0 10px;
		font-size: 18px;
	}
	#all_wrap .topAboutInfo > p {
		font-size: 14px;
	}
	#all_wrap .topAboutInfo > p br {
		display: none;
	}
	#topAbout .moreBtn.left {
		justify-content: center;
	}

	/*画像*/
	.topAboutWrap > figure {
		width: calc(100% - 120px);
		padding: 0;
		margin: 0 auto 30px;
		position: relative;
		filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.1));
	}
	.topAboutWrap > figure img {
		width: 100%;
		height: auto;
	}
	/*装飾*/
	.ttlScroll {
		top: 30px;
		left: 50px;
		font-size: 12px;
	}
}


/************************************************************/
/*　トップ　提案
/************************************************************/
#topProposal {
	width: 100%;
	padding: 130px 0 0;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}
#topProposal::after {
	content: '';
	display: block;
	width: 100vw;
	height: 75%;
	padding: 0;
	margin: 0;
	background: var(--base);
	position: absolute;
	top: 0;
	left: 0;
	z-index: -2;
}
#topProposal > .bgTxt {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 240px;
	line-height: 200px;
	text-align: center;
	text-transform: uppercase;
	color: #fff;
	position: absolute;
	top: 40px;
	left: 0;
	opacity: 0.7;
	z-index: -1;
}
#topProposal > header {
	padding: 0;
	margin: 0 auto 70px;
	position: relative;
	text-align: center;
}
#topProposal > header > .logo {
	display: block;
	width: 65px;
	padding: 0;
	margin: 0 auto 20px;
}
#topProposal > header > .logo img {
	width: 100%;
	height: auto;
}
#topProposal > header > h2 {
	padding: 0;
	margin: 0 auto;
	border: none;
	background: none;
	position: relative;
	font-size: 40px;
	line-height: 1.4em;
	text-align: center;
}
/*画像リスト*/
#all_wrap .topPropList {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	list-style: none;
	position: relative;
}
#all_wrap .topPropList li {
	width: 614px;
	padding: 0;
	margin: 0 20px;
	position: relative;
	overflow: hidden;
	text-align: center;
}
#all_wrap .topPropList li::before {
	content: '';
	display: block !important;
	padding-top: 130%;
}
#all_wrap .topPropList li img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	object-fit: cover;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#topProposal {
		width: 100%;
		padding: 50px 0 0;
	}
	#topProposal > .bgTxt {
		display: block;
		width: 100%;
		padding: 0;
		margin: 0;
		font-family: var(--font-en);
		font-size: 80px;
		line-height: 70px;
		text-align: center;
		text-transform: uppercase;
		color: #fff;
		position: absolute;
		top: 20px;
		left: 0;
		opacity: 0.7;
		z-index: -1;
	}
	#topProposal > header {
		width: calc(100% - 40px);
		padding: 0;
		margin: 0 auto 30px;
	}
	#topProposal > header > .logo {
		display: block;
		width: 50px;
		margin: 0 auto 10px;
	}
	#topProposal > header > h2 {
		font-size: 25px;
	}
	/*画像リスト*/
	#all_wrap .topPropList {
		width: 100%;
		max-width: 100%;
		min-width: 100%;
		justify-content: space-between;
		flex-wrap: nowrap;
		column-gap: 10px;
	}
	#all_wrap .topPropList > li:nth-child(1),
	#all_wrap .topPropList > li:nth-child(3) {
		width: calc(30% - 5px);
	}
	#all_wrap .topPropList > li:nth-child(2) {
		width: 40%;
	}
	#all_wrap .topPropList > li:nth-child(3n+2) {
		transition-delay: 0s;
	}
	#all_wrap .topPropList > li:nth-child(3n+3) {
		transition-delay: 0s;
	}
}

/*slick*/
#all_wrap .slider li::before,
#all_wrap .slider li::after {
	display: none;
}
#all_wrap .slider .slick-slide a {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	text-align: center;
}
#all_wrap .slider .slick-slide a img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	object-fit: cover;
	opacity: 0.4;
	transition: all 0.3s ease;
	border-radius: 10px;
}
#all_wrap .slider .slick-slide.slick-active img {
	opacity: 1;
	transition: all 0.3s ease;
}

/*Nextボタン*/
#all_wrap .slider .slick-next {
	width: 40px;
	height: 40px;
	padding: 0;
	margin: 0;
	border-radius: 50%;
	background: none;
	border: none;
	position: absolute;
	top: 50%;
	right: 30px;
	border-radius: 50%;
	border: 1px solid var(--text);
	transform: translate(0,-50%);
	-webkit-transform: translate(0,-50%);
	display: block;
	cursor: pointer;
	text-indent: -9999px;
	transition: all 0.3s ease;
	z-index: 20;
	outline: none;
}
#all_wrap .slider .slick-next::after {
	content: '';
	display: block;
	width: 12px;
	height: 12px;
	padding: 0;
	margin: 0;
	background: none;
	border-top: 2px solid var(--text);
	border-right: 2px solid var(--text);
	position: absolute;
	top: 50%;
	left: 45%;
	transform: translate(-50%,-50%) rotate(45deg);
	-webkit-transform: translate(-50%,-50%) rotate(45deg);
}
#all_wrap .slider .slick-next:hover {
	background: var(--main);
	transition: all 0.3s ease;
}
#all_wrap .slider .slick-next:hover::after {
	border-color: #fff;
}

/*Prevボタン*/
#all_wrap .slider .slick-prev {
	width: 40px;
	height: 40px;
	padding: 0;
	margin: 0;
	border-radius: 50%;
	background: none;
	border: none;
	position: absolute;
	top: 50%;
	left: 30px;
	border-radius: 50%;
	border: 1px solid var(--text);
	transform: translate(0,-50%);
	-webkit-transform: translate(0,-50%);
	display: block;
	cursor: pointer;
	text-indent: -9999px;
	transition: all 0.3s ease;
	z-index: 20;
	outline: none;
}
#all_wrap .slider .slick-prev::after {
	content: '';
	display: block;
	width: 12px;
	height: 12px;
	padding: 0;
	margin: 0;
	background: none;
	border-top: 2px solid var(--text);
	border-left: 2px solid var(--text);
	position: absolute;
	top: 50%;
	left: 55%;
	transform: translate(-50%,-50%) rotate(-45deg);
	-webkit-transform: translate(-50%,-50%) rotate(-45deg);
}
#all_wrap .slider .slick-prev:hover {
	background: var(--main);
	transition: all 0.3s ease;
}
#all_wrap .slider .slick-prev:hover::after {
	border-color: #fff;
}
/*ドットナビゲーションの設定*/
#all_wrap .slider .slick-dots {
	width: 100%;
	max-width: 1000px;
	padding: 0;
	margin: 0 auto;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	position: absolute;
	bottom: -40px;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: 5;
}
#all_wrap .slider .slick-dots li {
	display:inline-block;
	width: 15px;
	margin: 0 10px;
	padding: 0;
}
#all_wrap .slider .slick-dots button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
	display: block;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #fff;
	border: none;
	text-indent: -9999px;
	opacity: 1;
	transition: all 0.3s ease;
}
#all_wrap .slider .slick-dots .slick-active button {
	background: var(--main);
	opacity: 1;
	transition: all 0.3s ease;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*リスト*/
	#all_wrap #topVoice .slider {
		width: 100%;
		padding: 0;
		margin: 0;
		list-style: none;
		display: block;
		opacity: 1;
		position: relative;
		z-index: 10;
		visibility: visible;
		transition: 0.2s;
	}
	#all_wrap #topVoice .slider.slick-initialized {
		visibility: visible;
		opacity: 1;
		transition: 0.2s;
	}
	#all_wrap .slider .slick-slide {
		width: 100%;
		height: auto !important;
		padding: 0;
		margin: 0 !important;
		background: none;
		transform: scale(0.9);
		transform-origin: center;
		transition: all 0.3s ease;
	}
	#all_wrap .slider .slick-slide.slick-active {
		transform: scale(1);
		transition: all 0.3s ease;
	}
	#all_wrap .slider .slick-slide img {
		width: 100%;
		height: auto;
		transition: all 0.3s ease;
	}

	/*Nextボタン*/
	#all_wrap .slider .slick-next {
		right: 30px;
	}
	/*Prevボタン*/
	#all_wrap .slider .slick-prev {
		left: 30px;
	}
	/*ドットナビゲーションの設定*/
	#all_wrap .slider .slick-dots {
		width: 100%;
		max-width: 100%;
		padding: 0;
		margin: 0 auto;
		display: flex;
		display: -webkit-flex;
		justify-content: center;
		align-content: center;
		align-items: center;
		flex-wrap: nowrap;
		position: absolute;
		bottom: -20px;
		left: 50%;
		transform: translate(-50%,0);
		-webkit-transform: translate(-50%,0);
		z-index: 5;
	}
	#all_wrap .slider .slick-dots li {
		display:inline-block;
		margin: 0 2px;
	}
	#all_wrap .slider .slick-dots button {
		background-color: transparent;
		border: none;
		cursor: pointer;
		outline: none;
		padding: 0;
		appearance: none;
		display: block;
		width: 8px;
		height: 8px;
		border-radius: 50%;
		background: #fff;
		border: none;
		text-indent: -9999px;
		opacity: 1;
		transition: all 0.3s ease;
	}
	#all_wrap .slider .slick-dots .slick-active button {
		background: var(--main);
		opacity: 1;
		transition: all 0.3s ease;
	}
}

/************************************************************/
/*　トップ　選ばれる理由
/************************************************************/
#topReason {
	width: 100%;
	padding: 150px 0;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}
#topReason > header {
	width: 100%;
	max-width: 1080px;
	padding: 50px 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 30px;
}
#topReason > header::before {
	content: '';
	display: block;
	width: 90px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#topReason > header::after {
	content: '';
	display: block;
	width: 500vw;
	margin: auto;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #ECECEC;
	position: absolute;
	bottom: 0;
	left: -100%;
	right: -100%;
	z-index: -1;
}
#topReason > header > em {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 90px;
	line-height: 1;
	font-style: normal;
}
#topReason > header > h2 {
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
	font-size: 20px;
	line-height: 1;
}
#topReason > header > span {
	display: block;
	width: calc(100vw + 200px);
	height: 190px;
	overflow: hidden;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 300px;
	line-height: 190px;
	text-align: right;
	text-transform: uppercase;
	color: #F7F7F7;
	white-space: nowrap;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: -1;
}
/*リスト*/
#all_wrap .topReasonList {
	width: 100%;
	max-width: 1080px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
}
#all_wrap .topReasonList > li {
	width: 100%;
	padding: 60px 0;
	margin: 0 auto;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 100px;
	position: relative;
}
#all_wrap .topReasonList > li::after {
	content: '';
	display: block;
	width: 200vw;
	margin: auto;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #ECECEC;
	position: absolute;
	bottom: 0;
	left: -100%;
	right: -100%;
	z-index: -1;
}
/*情報*/
#all_wrap .topReasonList > li > .topReasonInfo {
	padding: 0;
	margin: 0;
	position: relative;
	order: 1;
}
#all_wrap .topReasonList > li > .topReasonInfo > em {
	display: block;
	padding: 0;
	margin: 0 auto 10px;
	font-family: var(--font-en);
	font-size: 16px;
	line-height: 1;
	color: var(--main);
	font-style: normal;
	text-transform: uppercase;
}
#all_wrap .topReasonList > li > .topReasonInfo > em small {
	display: inline-block;
	padding: 0;
	margin: 0 10px 0 0;
}
#all_wrap .topReasonList > li > .topReasonInfo > h3 {
	padding: 0 0 20px;
	margin: 0 auto 20px;
	background: none;
	border: none;
	font-size: 40px;
	line-height: 1.4em;
	position: relative;
}
#all_wrap .topReasonList > li > .topReasonInfo > h3::before {
	content: '';
	display: block;
	width: 50px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#all_wrap .topReasonList > li > .topReasonInfo > p {
	font-size: 15px;
	line-height: 2em;
	padding: 0;
	margin: 0;
	text-align: justify;
	text-justify: inter-ideograph;
}
/*画像*/
#all_wrap .topReasonList > li > figure {
	width: 540px;
	min-width: 540px;
	padding: 0;
	margin: 0;
	position: relative;
	overflow: hidden;
	text-align: center;
	filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.1));
}
#all_wrap .topReasonList > li > figure::before {
	content: '';
	display: block;
	padding-top: 65%;
}
#all_wrap .topReasonList > li > figure img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	object-fit: cover;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#topReason {
		width: 100%;
		padding: 50px 0;
		margin: 0 auto;
		position: relative;
		z-index: 0;
	}
	#topReason > header {
		width: calc(100% - 60px);
		max-width: 100%;
		padding: 20px 0;
		margin: 0 auto;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		flex-wrap: nowrap;
		column-gap: 10px;
	}
	#topReason > header::before {
		content: '';
		display: block;
		width: 50px;
		height: 1px;
		padding: 0;
		margin: 0;
		background: var(--main);
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: 1;
	}
	#topReason > header::after {
		content: '';
		display: block;
		width: 500vw;
		margin: auto;
		height: 1px;
		padding: 0;
		margin: 0;
		background: #ECECEC;
		position: absolute;
		bottom: 0;
		left: -100%;
		right: -100%;
		z-index: -1;
	}
	#topReason > header > em {
		display: inline-block;
		padding: 0;
		margin: 0;
		font-family: var(--font-en);
		font-size: 45px;
		line-height: 1;
		font-style: normal;
	}
	#topReason > header > h2 {
		padding: 0;
		margin: 0;
		border: none;
		background: none;
		position: relative;
		font-size: 14px;
		line-height: 1;
	}
	#topReason > header > span {
		display: block;
		width: calc(100vw + 50px);
		height: 75px;
		font-size: 80px;
		line-height: 80px;
	}
	/*リスト*/
	#all_wrap .topReasonList {
		width: calc(100% - 60px);
		max-width: 100%;
	}
	#all_wrap .topReasonList > li {
		width: 100%;
		padding: 30px 0;
		margin: 0 auto;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		column-gap: 0;
		position: relative;
		border-bottom: 1px solid #ECECEC;
	}
	#all_wrap .topReasonList > li::after {
		display: none;
	}
	/*情報*/
	#all_wrap .topReasonList > li > .topReasonInfo > em {
		font-size: 14px;
	}
	#all_wrap .topReasonList > li > .topReasonInfo > em small {
		font-size: 14px;
	}
	#all_wrap .topReasonList > li > .topReasonInfo > h3 {
		padding: 0 0 10px;
		margin: 0 auto 10px;
		font-size: 30px;
	}
	#all_wrap .topReasonList > li > .topReasonInfo > p {
		font-size: 14px;
	}
	/*画像*/
	#all_wrap .topReasonList > li > figure {
		width: 100%;
		min-width: 100%;
		padding: 0;
		margin: 0 auto 15px;
	}
}

/************************************************************/
/*　トップ　お客様の声
/************************************************************/
#topVoice {
	width: 100%;
	padding: 150px 0;
	margin: 0 auto;
	background: #f6f6f6;
	position: relative;
	z-index: 0;
}
#topVoice::before {
	content: '';
	display: block;
	width: 100%;
	height: 50%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/10/topVoice_bg2.webp');
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: top center;
	z-index: -2;
	opacity: 0.5;
}
#topVoice::after {
	content: '';
	display: block;
	width: 100%;
	height: 50%;
	padding: 0;
	margin: 0;
	background: #283847;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0.5;
	z-index: -1;
}
#topVoice > header {
	width: 100%;
	max-width: 1080px;
	padding: 50px 0;
	margin: 0 auto 70px;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 30px;
}
#topVoice > header::before {
	content: '';
	display: block;
	width: 90px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#topVoice > header::after {
	content: '';
	display: block;
	width: 500vw;
	margin: auto;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #fff;
	position: absolute;
	bottom: 0;
	left: -100%;
	right: -100%;
	z-index: -1;
}
#topVoice > header > em {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 90px;
	line-height: 1;
	font-style: normal;
	color: #fff;
}
#topVoice > header > h2 {
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
	font-size: 20px;
	line-height: 1;
	color: #fff;
}
#topVoice > header > span {
	display: block;
	width: calc(100vw + 200px);
	height: 190px;
	overflow: hidden;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 300px;
	line-height: 190px;
	text-align: right;
	text-transform: uppercase;
	color: #fff;
	white-space: nowrap;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: -1;
}
#topVoice > header > .moreBtn {
	margin: 0 0 0 auto;
}

/*リスト*/
#all_wrap .voiceList {
	width: 100%;
	max-width: 1080px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	column-gap: 25px;
	grid-row-gap: 40px;
}
#all_wrap .voiceList > li {
	width: calc(100% / 3 - 17px);
	padding: 0;
	margin: 0;
	position: relative;
}
#all_wrap .voiceList > li:nth-child(3n+2) {
	transition-delay: 0.3s;
}
#all_wrap .voiceList > li:nth-child(3n+3) {
	transition-delay: 0.6s;
}
#all_wrap .voiceList > li figure {
	width: 100%;
	padding: 0;
	margin: 0 auto 15px;
	position: relative;
	text-align: center;
	overflow: hidden;
	border-radius: 5px;
}
#all_wrap .voiceList > li figure::before {
	content: '';
	display: block;
	padding-top: 65%;
}
#all_wrap .voiceList > li figure img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform-origin: center;
	object-fit: cover;
	transition: var(--ease);
}
#all_wrap .voiceList > li figure:hover img {
	transform: translate(-50%,-50%) scale(1.05);
	-webkit-transform: translate(-50%,-50%) scale(1.05);
	transform-origin: center;
	transition: var(--ease);
}
#all_wrap .voiceList > li h3 {
	padding: 0;
	margin: 0 auto 10px;
	border: none;
	background: none;
	position: relative;
	text-align: justify;
	text-justify: inter-ideograph;
}
#all_wrap .voiceList > li h3 a {
	font-size: 16px;
	line-height: 1.7em;
	text-decoration: none;
	color: var(--text);
	transition: var(--ease);
}
#all_wrap .voiceList > li h3 a:hover {
	text-decoration: none;
	color: var(--link);
	transition: var(--ease);
}
#all_wrap .voiceList > li .date {
	display: block;
	color: #838383;
	font-family: var(--font-en);
	font-size: 14px;
	line-height: 1;
	font-weight: lighter;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#topVoice {
		width: 100%;
		padding: 50px 0;
	}
	#topVoice::before {
		content: '';
		display: block;
		width: 100%;
		height: 29%;
		padding: 0;
		margin: 0;
		position: absolute;
		bottom: 0;
		left: 0;
		background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/10/topVoice_bg2.webp');
		background-repeat: no-repeat;
		background-size: auto 100%;
		background-position: bottom center;
		z-index: -1;
		opacity: 0.5;
	}
	#topVoice::after {
		content: '';
		display: block;
		width: 100%;
		height: 29%;
	}
	#topVoice > header {
		width: calc(100% - 60px);
		max-width: 100%;
		padding: 20px 0;
		margin: 0 auto 30px;
		column-gap: 10px;
		flex-wrap: wrap;
	}
	#topVoice > header::before {
		width: 50px;
	}
	#topVoice > header > em {
		display: block;
		font-size: 45px;
		margin-bottom: 5px;
	}
	#topVoice > header > h2 {
		display: block;
		font-size: 14px;
	}
	#topVoice > header > span {
		display: block;
		width: calc(100vw + 50px);
		height: 75px;
		font-size: 80px;
		line-height: 80px;
	}
	
	/*リスト*/
	#all_wrap .voiceList {
		width: calc(100% - 60px);
		max-width: 100%;
		column-gap: 0;
		grid-row-gap: 25px;
		margin: 0 auto 30px;
	}
	#all_wrap .voiceList > li {
		width: calc(47%);
		padding: 0;
		margin: 0;
		display: block;
		position: relative;
	}
	#all_wrap .voiceList > li:nth-child(3n+2) {
		transition-delay: 0s;
	}
	#all_wrap .voiceList > li:nth-child(3n+3) {
		transition-delay: 0s;
	}
	#all_wrap .voiceList > li > figure {
		width: 100%;
		padding: 0;
		margin: 0 auto 10px;
		position: relative;
		text-align: center;
		overflow: hidden;
		border-radius: 5px;
	}
	#all_wrap .voiceList > li > .voiceListInfo {
		width: 100%;
		padding: 0;
		margin: 0;
		position: relative;
	}
	#all_wrap .voiceList > li h3 {
		padding: 0;
		margin: 0 auto 5px;
	}
	#all_wrap .voiceList > li h3 a {
		font-size: 12px;
		line-height: 1.4em;
	}
	#all_wrap .voiceList + .moreBtn {
		justify-content: center;
	}
}

/************************************************************/
/*　トップ　コラム
/************************************************************/
#topColumn,
#all_wrap .pageContents .content #topColumn {
	width: 100%;
	padding: 150px 0 0;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}
#topColumn > header,
#all_wrap .pageContents .content #topColumn > header {
	width: 100%;
	max-width: 1080px;
	padding: 50px 0;
	margin: 0 auto 70px;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 30px;
}
#topColumn > header::before,
#all_wrap .pageContents .content #topColumn > header::before {
	content: '';
	display: block;
	width: 90px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#topColumn > header::after,
#all_wrap .pageContents .content #topColumn > header::after {
	content: '';
	display: block;
	width: 500vw;
	margin: auto;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #ECECEC;
	position: absolute;
	bottom: 0;
	left: -100%;
	right: -100%;
	z-index: -1;
}
#topColumn > header > em,
#all_wrap .pageContents .content #topColumn > header > em {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 90px;
	line-height: 1;
	font-style: normal;
}
#topColumn > header > h2,
#all_wrap .pageContents .content #topColumn > header > h2 {
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
	font-size: 20px;
	line-height: 1;
}
#topColumn > header > h2::before,
#all_wrap .pageContents .content #topColumn > header > h2::before {
	display: none;
}
#topColumn > header > span,
#all_wrap .pageContents .content #topColumn > header > span {
	display: block;
	width: calc(100vw + 200px);
	height: 190px;
	overflow: hidden;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 300px;
	line-height: 190px;
	text-align: right;
	text-transform: uppercase;
	color: #F7F7F7;
	white-space: nowrap;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: -1;
}
#topColumn > header > .moreBtn,
#all_wrap .pageContents .content #topColumn > header > .moreBtn {
	margin: 0 0 0 auto;
}

/*リスト*/
#all_wrap .columnList,
#all_wrap .pageContents .content .columnList {
	width: 100%;
	max-width: 1080px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	column-gap: 25px;
	grid-row-gap: 40px;
}
#all_wrap .columnList > li,
#all_wrap .pageContents .content .columnList > li {
	width: calc(100% / 3 - 17px);
	padding: 0;
	margin: 0;
	position: relative;
}
#all_wrap .columnList > li:nth-child(3n+2),
#all_wrap .pageContents .content .columnList > li:nth-child(3n+2) {
	transition-delay: 0.3s;
}
#all_wrap .columnList > li:nth-child(3n+3),
#all_wrap .pageContents .content .columnList > li:nth-child(3n+3) {
	transition-delay: 0.6s;
}
#all_wrap .columnList > li figure,
#all_wrap .pageContents .content .columnList > li figure {
	width: 100%;
	padding: 0;
	margin: 0 auto 15px;
	position: relative;
	text-align: center;
	overflow: hidden;
	border-radius: 5px;
}
#all_wrap .columnList > li figure::before,
#all_wrap .pageContents .content .columnList > li figure::before {
	content: '';
	display: block;
	padding-top: 65%;
}
#all_wrap .columnList > li figure img,
#all_wrap .pageContents .content .columnList > li  figure img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform-origin: center;
	object-fit: cover;
	transition: var(--ease);
}
#all_wrap .columnList > li figure:hover img,
#all_wrap .pageContents .content .columnList > li figure:hover img {
	transform: translate(-50%,-50%) scale(1.05);
	-webkit-transform: translate(-50%,-50%) scale(1.05);
	transform-origin: center;
	transition: var(--ease);
}
.tags {
	width: 100%;
	padding: 0;
	margin: 0 auto 10px;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	column-gap: 8px;
	grid-row-gap: 8px;
}
.tags > span.cat {
	display: inline-block;
	padding: 5px 5px;
	margin: 0;
	background: var(--main);
	color: #fff;
	font-size: 10px;
	line-height: 1;
	font-weight: lighter;
	font-style: normal;
	border-radius: 3px;
}
.tags > span.tag {
	display: inline-block;
	padding: 0;
	margin: 0;
	color: #838383;
	font-size: 10px;
	line-height: 1;
	font-weight: lighter;
	font-style: normal;
}
#all_wrap .columnList > li h3,
#all_wrap .pageContents .content .columnList > li h3 {
	padding: 0;
	margin: 0 auto 10px;
	border: none;
	background: none;
	position: relative;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: 16px;
	line-height: 1.4em;
}
#all_wrap .columnList > li h3 a,
#all_wrap .pageContents .content .columnList > li  h3 a {
	font-size: 16px;
	line-height: 1.4em;
	text-decoration: none;
	color: var(--text);
	transition: var(--ease);
}
#all_wrap .columnList > li h3 a:hover,
#all_wrap .pageContents .content .columnList > li h3 a:hover {
	text-decoration: none;
	color: var(--link);
	transition: var(--ease);
}
#all_wrap .columnList > li .date,
#all_wrap .pageContents .content .columnList > li .date {
	display: block;
	color: #838383;
	font-family: var(--font-en);
	font-size: 14px;
	line-height: 1;
	font-weight: lighter;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#topColumn,
	#all_wrap .pageContents .content #topColumn {
		width: 100%;
		padding: 50px 0;
		margin: 0 auto;
		position: relative;
		z-index: 0;
	}
	#topColumn > header,
	#all_wrap .pageContents .content #topColumn > header {
		width: calc(100% - 60px);
		max-width: 100%;
		padding: 20px 0;
		margin: 0 auto 30px;
		column-gap: 10px;
	}
	#topColumn > header::before,
	#all_wrap .pageContents .content #topColumn > header::before {
		width: 50px;
	}
	#topColumn > header > em,
	#all_wrap .pageContents .content #topColumn > header > em {
		font-size: 45px;
	}
	#topColumn > header > h2,
	#all_wrap .pageContents .content #topColumn > header > h2 {
		font-size: 14px;
	}
	#topColumn > header > span,
	#all_wrap .pageContents .content #topColumn > header > span {
		display: block;
		width: calc(100vw + 50px);
		height: 75px;
		font-size: 80px;
		line-height: 80px;
	}
	#topColumn > header > .moreBtn,
	#all_wrap .pageContents .content #topColumn > header > .moreBtn {
		margin: 0 0 0 auto;
	}
	/*リスト*/
	#all_wrap .columnList,
	#all_wrap .pageContents .content .columnList {
		width: calc(100% - 60px);
		max-width: 100%;
		grid-row-gap: 20px;
		margin: 0 auto 30px;
	}
	#all_wrap.sub_page .columnList,
	#all_wrap.sub_page .pageContents .content .columnList {
		width: calc(100% - 60px);
		max-width: 100%;
		grid-row-gap: 20px;
		margin: 0 auto 30px;
	}
	#all_wrap .columnList > li,
	#all_wrap .pageContents .content .columnList > li {
		width: calc(100%);
		padding: 0;
		margin: 0 auto;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		align-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
		column-gap: 15px;
		position: relative;
	}
	#all_wrap .columnList > li:nth-child(3n+2),
	#all_wrap .pageContents .content .columnList > li:nth-child(3n+2) {
		transition-delay: 0s;
	}
	#all_wrap .columnList > li:nth-child(3n+3),
	#all_wrap .pageContents .content .columnList > li:nth-child(3n+3) {
		transition-delay: 0s;
	}
	#all_wrap .columnList > li > figure,
	#all_wrap .pageContents .content .columnList > li > figure {
		width: 45%;
		padding: 0;
		margin: 0;
		position: relative;
		text-align: center;
		overflow: hidden;
		border-radius: 5px;
	}
	#all_wrap .columnList > li > .columnListInfo,
	#all_wrap .pageContents .content .columnList > li > .columnListInfo {
		width: calc(55% - 15px);
		padding: 0;
		margin: 0;
		position: relative;
	}
	.tags {
		margin: 0 auto 5px;
		column-gap: 5px;
	}
	#all_wrap .columnList > li h3,
	#all_wrap .pageContents .content .columnList > li > h3 {
		padding: 0;
		margin: 0 auto 5px !important;
		font-size: 12px;
		line-height: 1.4em;
	}
	#all_wrap .columnList > li h3 a,
	#all_wrap .pageContents .content .columnList > li > h3 a {
		font-size: 12px !important;
		line-height: 1.4em !important;
	}
	#all_wrap .columnList + .moreBtn,
	#all_wrap .pageContents .content .columnList + .moreBtn {
		justify-content: center;
	}
}

/************************************************************/
/*　トップ　アプリケーション
/************************************************************/
#topApp {
	width: 100%;
	padding: 150px 0;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}
#topApp::before {
	content: '';
	display: block;
	width: 75%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 0;
	right: 0;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/09/topApp_bg.webp');
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: top center;
	z-index: -1;
}
#topApp > header {
	width: 100%;
	max-width: 1080px;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 30px;
}
#topApp > header > em {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 90px;
	line-height: 1;
	font-style: normal;
}
#topApp > header > h2 {
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
	font-size: 20px;
	line-height: 1;
	white-space: nowrap;
}
#topApp .topAppWrap {
	width: 100%;
	max-width: 1080px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
#topApp .topAppWrap::before {
	content: '';
	display: block;
	width: calc(100% - 100px);
	height: calc(100% + 100px);
	padding: 0;
	margin: 0;
	background: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
#topApp .topAppInfo {
	width: calc(50% - 70px);
	padding: 0;
	margin: 0;
	position: relative;
}
/*画像*/
#topApp .topAppWrap > figure {
	width: calc(50vw - 55px);
	padding: 0;
	margin: 0;
	position: absolute;
	top: 0;
	left: 50%;
}
#topApp .topAppWrap > figure img {
	width: 100%;
	height: auto;
	filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.1));
}
/*情報*/
#all_wrap .topAppInfo > h3 {
	padding: 0 0 40px;
	margin: 0 0 40px;
	background: none;
	border: none;
	position: relative;
	font-size: 40px;
	line-height: 1.4em;
	text-align: left;
	z-index: 0;
}
#all_wrap .topAppInfo > h3::before {
	content: '';
	display: block;
	width: 90px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#all_wrap .topAppInfo > h3::after {
	content: '';
	display: block;
	width: 500vw;
	margin: auto;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #ECECEC;
	position: absolute;
	bottom: 0;
	left: -200%;
	right: -200%;
	z-index: -1;
}
#all_wrap .topAppInfo > p {
	font-size: 15px;
	line-height: 2em;
	padding: 0;
	margin: 0;
	text-align: justify;
	text-justify: inter-ideograph;
}

/*装飾*/
#topApp .ttlScroll {
	display: block;
	padding: 0;
	margin: 0;
	position: absolute;
	top: -50px;
	left: unset;
	right: -50px;
	z-index: 5;
	font-family: var(--font-en);
	font-size: 14px;
	line-height: 1.4em;
	color: var(--main);
	text-align: left;
	text-transform: uppercase;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#topApp {
		width: 100%;
		padding: 50px 0;
	}
	#topApp::before {
		width: calc(100% - 15px);
		height: 100%;
	}
	#topApp > header {
		width: calc(100% - 60px);
		max-width: 100%;
		margin: 0 auto 30px;
		flex-wrap: wrap;
		column-gap: 0;
	}
	#topApp > header > em {
		display: block;
		font-size: 45px;
		margin-bottom: 5px;
	}
	#topApp > header > h2 {
		font-size: 14px;
		line-height: 1;
	}
	#topApp .topAppWrap {
		width: calc(100%);
		max-width: 100%;
	}
	#topApp .topAppWrap::before {
		content: '';
		display: block;
		width: calc(100% - 80px);
		height: calc(100% + 70px);
	}
	#topApp .topAppInfo {
		width: calc(100% - 60px);
		margin: 0 auto;
		order: 1;
	}
	/*画像*/
	#topApp .topAppWrap > figure {
		width: calc(100% - 60px);
		padding: 0 30px 0 0;
		margin: 0 auto 15px;
		position: relative;
		top: unset;
		left: unset;
	}
	/*情報*/
	#all_wrap .topAppInfo > h3 {
		padding: 0 0 20px;
		margin: 0 0 20px;
		font-size: 25px;
	}
	#all_wrap .topAppInfo > h3::before {
		width: 50px;
	}
	#all_wrap .topAppInfo > p {
		font-size: 14px;
	}
	#all_wrap .topAppInfo > .moreBtn {
		justify-content: center;
		margin-top: 20px !important;
	}

	/*装飾*/
	#topApp .ttlScroll {
		top: 15px;
		left: unset;
		right: 30px;
	}
}


/************************************************************/
/*　トップ　人材紹介
/************************************************************/
#topLab {
	width: 80%;
	max-width: 1200px;
	padding: 0 0 100px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
#topLab::before {
	content: '';
	display: block;
	width: 100vw;
	height: 100%;
	background: #f6f6f6;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%,0);
	z-index: -1;
}
#topLab > header {
	width: calc(100%);
	max-width: 100%;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 30px;
}
#topLab > header > em {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 90px;
	line-height: 1;
	font-style: normal;
}
#topLab > header > h2 {
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
	font-size: 20px;
	line-height: 1;
	white-space: nowrap;
}
#topLab .topLabWrap {
	width: calc(100%);
	max-width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#topLab .topLabWrap::before {
	content: '';
	display: block;
	width: calc(100vw);
	height: calc(100% + 150px);
	padding: 0;
	margin: 0;
	background-image: linear-gradient(to right, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 80%, rgba(255,255,255,0) 80%, rgba(255,255,255,0) 100% );
	position: absolute;
	bottom: -50px;
	left: 50%;
	transform: translate(-50%,0);
	z-index: -1;
}
#topLab .topLabInfo {
	width: calc(100% - 500px);
	padding: 0;
	margin: 0;
	position: relative;
	order: 0;
}
/*画像*/
#topLab .topLabWrap > figure {
	width: 450px;
	padding: 0;
	margin: 0;
	filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.1));
	position: relative;
	z-index: 2;
}
#topLab .topLabWrap > figure::before {
	content: '';
	display: block;
	padding-top: 120%;
}
#topLab .topLabWrap > figure img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	object-fit: cover;
}
/*情報*/
#topLab .topLabInfo > h3 {
	padding: 0 0 40px;
	margin: 0 0 40px;
	background: none;
	border: none;
	position: relative;
	font-size: 37px;
	line-height: 1.4em;
	letter-spacing: -0.1em;
	text-align: left;
	z-index: 0;
}
#topLab .topLabInfo > h3::before {
	content: '';
	display: block;
	width: 90px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#topLab .topLabInfo > h3::after {
	content: '';
	display: block;
	width: 500vw;
	margin: auto;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #ECECEC;
	position: absolute;
	bottom: 0;
	left: -200%;
	right: -200%;
	z-index: -1;
}
#topLab .topLabInfo > p {
	font-size: 15px;
	line-height: 2em;
	padding: 0;
	margin: 0 auto 10px;
	text-align: justify;
	text-justify: inter-ideograph;
}
#topLab .topLabInfo > p:last-of-type {
	margin-bottom: 30px;
}

/*装飾*/
#topLab .ttlScroll {
	display: block;
	padding: 0;
	margin: 0;
	position: absolute;
	top: -93px;
	left: -50px;
	right: unset;
	z-index: 5;
	font-family: var(--font-en);
	font-size: 14px;
	line-height: 1.4em;
	color: var(--main);
	text-align: left;
	text-transform: uppercase;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#topLab {
		width: 100%;
		padding: 0 0 30px;
		margin: 0 auto;
	}
	#topLab > header {
		width: calc(100% - 60px);
		max-width: 100%;
		margin: 0 auto 30px;
		justify-content: flex-start;
		flex-wrap: wrap;
		column-gap: 0;
	}
	#topLab > header > em {
		display: block;
		font-size: 45px;
		margin-bottom: 5px;
	}
	#topLab > header > h2 {
		font-size: 14px;
	}
	#topLab .topLabWrap {
		width: calc(100%);
		max-width: 100%;
		padding: 0;
		margin: 0 auto;
		justify-content: flex-start;
	}
	#topLab .topLabWrap::before {
		content: '';
		display: block;
		width: calc(100%);
		height: calc(100% - 50px);
		background: #fff;
		position: absolute;
		border: 0;
		right: 0;
	}
	#topLab .topLabInfo {
		width: calc(100% - 60px);
		max-width: 100%;
		margin: 0 auto;
		order: 1;
	}
	/*画像*/
	#topLab .topLabWrap > figure {
		width: calc(100% - 60px);
		padding: 0 0 0 30px;
		margin: 0 0 15px  auto;
		position: relative;
		top: unset;
		left: unset;
		right: unset;
	}
	#topLab .topLabWrap > figure::before {
		content: '';
		display: block;
		padding-top: 75%;
	}
	/*情報*/
	#topLab .topLabInfo > h3 {
		padding: 0 0 20px;
		margin: 0 0 20px;
		font-size: 19px;
	}
	#topLab .topLabInfo > h3::before {
		width: 50px;
	}
	#topLab .topLabInfo > p {
		font-size: 14px;
	}
	#topLab .topLabInfo > p:last-of-type {
		margin-bottom: 20px;
	}

	#all_wrap .topLabInfo > .moreBtn {
		width: 100%;
		justify-content: center;
		margin-top: 20px !important;
	}
	#all_wrap .topLabInfo > .moreBtn a {
		width: 100%;
		font-size: 12px;
	}

	/*装飾*/
	#topLab .ttlScroll {
		top: 15px;
		left: 50px;
	}
}


/************************************************************/
/*　トップ　人材紹介
/************************************************************/
#topRecruit {
	width: 80%;
	max-width: 1200px;
	padding: 150px 0 100px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
#topRecruit::before {
	content: '';
	display: block;
	width: 100vw;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/09/topRecruit_bg.webp');
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: top center;
	z-index: -1;
}
#topRecruit > header {
	width: calc(100%);
	max-width: 100%;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 30px;
}
#topRecruit > header > em {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 90px;
	line-height: 1;
	font-style: normal;
}
#topRecruit > header > h2 {
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
	font-size: 20px;
	line-height: 1;
	white-space: nowrap;
}
#topRecruit .topRecruitWrap {
	width: calc(100%);
	max-width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#topRecruit .topRecruitWrap::before {
	content: '';
	display: block;
	width: calc(100vw);
	height: calc(100% + 150px);
	padding: 0;
	margin: 0;
	background-image: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 20%, rgba(255,255,255,1) 20%, rgba(255,255,255,1) 100% );
	position: absolute;
	bottom: -50px;
	left: 50%;
	transform: translate(-50%,0);
	z-index: -1;
}
#topRecruit .topRecruitInfo {
	width: calc(100% - 500px);
	padding: 0;
	margin: 0;
	position: relative;
	order: 1;
}
/*画像*/
#topRecruit .topRecruitWrap > figure {
	width: 450px;
	padding: 0;
	margin: 0;
	filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.1));
	position: relative;
	z-index: 2;
}
#topRecruit .topRecruitWrap > figure::before {
	content: '';
	display: block;
	padding-top: 120%;
}
#topRecruit .topRecruitWrap > figure img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	object-fit: cover;
}
/*情報*/
#topRecruit .topRecruitInfo > h3 {
	padding: 0 0 40px;
	margin: 0 0 40px;
	background: none;
	border: none;
	position: relative;
	font-size: 40px;
	line-height: 1.4em;
	text-align: left;
	z-index: 0;
}
#topRecruit .topRecruitInfo > h3::before {
	content: '';
	display: block;
	width: 90px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#topRecruit .topRecruitInfo > h3::after {
	content: '';
	display: block;
	width: 500vw;
	margin: auto;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #ECECEC;
	position: absolute;
	bottom: 0;
	left: -200%;
	right: -200%;
	z-index: -1;
}
#topRecruit .topRecruitInfo > p {
	font-size: 15px;
	line-height: 2em;
	padding: 0;
	margin: 0;
	text-align: justify;
	text-justify: inter-ideograph;
}

/*リンク*/
.topRecruitLink {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	margin-top: 30px;
	position: relative;
	list-style: none;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	flex-wrap: nowrap;
	column-gap: 30px;
}
.topRecruitLink > li {
	width: 350px;
	min-width: 350px;
	padding: 30px;
	margin: 0;
	position: relative;
	background-repeat: no-repeat;
	background-position: top right;
	background-size: 60%;
	background-color: #fafafa;
	border-radius: 20px;
	display: flex;
	flex-direction: column;
}
.topRecruitLink > li:first-child {
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/10/topRecruit_btn01.webp');
}
.topRecruitLink > li:last-child {
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/10/topRecruit_btn02.webp');
}
#all_wrap .topRecruitLink > li > p {
	width: 50%;
	padding: 0;
	margin: 0;
	font-size: 12px;
	line-height: 1.7em;
	text-align: justify;
	text-justify: inter-ideograph;
	min-height: 85px;
}
#all_wrap .topRecruitLink > li > .btn {
	width: 100%;
	margin: auto auto 0;
	text-align: center;
}
#all_wrap .topRecruitLink > li > .btn a {
	display: inline-flex;
	display: -webkit-inline-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	margin: 10px auto 0;
	padding: 10px 20px;
	border-radius: 10px;
	font-size: 14px;
	line-height: 1;
	font-weight: 400;
	color: #fff;
	transition: var(--ease);
}
#all_wrap .topRecruitLink > li:first-child > .btn a {
	background: #4f81bd;
}
#all_wrap .topRecruitLink > li:last-child > .btn a {
	background: #ffc000;
}
#all_wrap .topRecruitLink > li > .btn a:hover {
	opacity: 0.8;
	transition: var(--ease);
}

/*装飾*/
#topRecruit .ttlScroll {
	display: block;
	padding: 0;
	margin: 0;
	position: absolute;
	top: -50px;
	left: 50px;
	right: unset;
	z-index: 5;
	font-family: var(--font-en);
	font-size: 14px;
	line-height: 1.4em;
	color: var(--main);
	text-align: left;
	text-transform: uppercase;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#topRecruit {
		width: 100%;
		padding: 50px 0 0;
		margin: 0 auto;
	}
	#topRecruit::before {
		width: calc(100%);
		height: 100%;
		background-size: 120%;
	}
	#topRecruit > header {
		width: calc(100% - 60px);
		max-width: 100%;
		margin: 0 auto 30px;
		justify-content: flex-start;
		flex-wrap: wrap;
		column-gap: 0;
	}
	#topRecruit > header > em {
		display: block;
		font-size: 45px;
		margin-bottom: 5px;
	}
	#topRecruit > header > h2 {
		font-size: 14px;
	}
	#topRecruit .topRecruitWrap {
		width: calc(100%);
		max-width: 100%;
		padding: 0;
		margin: 0 auto;
		justify-content: flex-start;
	}
	#topRecruit .topRecruitWrap::before {
		content: '';
		display: none;
	}
	#topRecruit .topRecruitInfo {
		width: calc(100% - 60px);
		max-width: 100%;
		margin: 0 auto;
		order: 1;
	}
	/*画像*/
	#topRecruit .topRecruitWrap > figure {
		width: calc(100% - 60px);
		padding: 0 0 0 30px;
		margin: 0 0 15px  auto;
		position: relative;
		top: unset;
		left: unset;
		right: unset;
	}
	#topRecruit .topRecruitWrap > figure::before {
		content: '';
		display: block;
		padding-top: 75%;
	}
	/*情報*/
	#topRecruit .topRecruitInfo > h3 {
		padding: 0 0 20px;
		margin: 0 0 20px;
		font-size: 20px;
	}
	#topRecruit .topRecruitInfo > h3::before {
		width: 50px;
	}
	#topRecruit .topRecruitInfo > p {
		font-size: 14px;
	}
	
	#all_wrap .topRecruitInfo > .moreBtn {
		justify-content: center;
		margin-top: 20px !important;
	}
	
	/*リンク*/
	.topRecruitLink {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		margin-top: 15px;
		position: relative;
		list-style: none;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 20px;
	}
	.topRecruitLink > li {
		width: 100%;
		min-width: 100%;
		padding: 20px;
		border-radius: 20px;
		display: block;
	}
	#all_wrap .topRecruitLink > li > p {
		width: 60%;
		font-size: 12px;
		line-height: 1.7em;
		min-height: auto;
	}
	#all_wrap .topRecruitLink > li > .btn a {
		padding: 10px 20px;
		border-radius: 10px;
		font-size: 14px;
	}

	/*装飾*/
	#topRecruit .ttlScroll {
		top: 15px;
		left: 50px;
	}
}


/************************************************************/
/*　トップ　コンサルティング
/************************************************************/
#topConsul {
	width: 80%;
	max-width: 1200px;
	padding: 50px 0;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}
#topConsul::before {
	content: '';
	display: block;
	width: 100vw;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: -50px;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/09/topApp_bg.webp');
	background-repeat: no-repeat;
	background-size: 75%;
	background-position: top right;
	z-index: -2;
}
#topConsul > header {
	width: calc(100%);
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 30px;
}
#topConsul > header > em {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 90px;
	line-height: 1;
	font-style: normal;
}
#topConsul > header > h2 {
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
	font-size: 20px;
	line-height: 1;
	white-space: nowrap;
}
#topConsul .topConsulWrap {
	width: calc(100%);
	max-width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	column-gap: 50px;
}
#topConsul .topConsulWrap::before {
	content: '';
	display: block;
	width: calc(100% - 100px);
	height: calc(100% + 100px);
	padding: 0;
	margin: 0;
	background: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
#topConsul .topConsulInfo {
	width: calc(100% - 500px);
	padding: 0;
	margin: 0;
	position: relative;
}
/*画像*/
#topConsul .topConsulWrap > figure {
	width: 450px;
	padding: 0;
	margin: 0;
	filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.1));
	position: relative;
	z-index: 2;
}
#topConsul .topConsulWrap > figure::before {
	content: '';
	display: block;
	padding-top: 120%;
}
#topConsul .topConsulWrap > figure img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	object-fit: cover;
}
/*情報*/
#all_wrap .topConsulInfo > h3 {
	padding: 0 0 40px;
	margin: 0 0 40px;
	background: none;
	border: none;
	position: relative;
	font-size: 34px;
	line-height: 1.4em;
	text-align: left;
}
#all_wrap .topConsulInfo > h3::before {
	content: '';
	display: block;
	width: 90px;
	height: 1px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#all_wrap .topConsulInfo > h3::after {
	content: '';
	display: block;
	width: 500vw;
	margin: auto;
	height: 1px;
	padding: 0;
	margin: 0;
	background: #ECECEC;
	position: absolute;
	bottom: 0;
	left: -200%;
	right: -200%;
	z-index: -1;
}
#all_wrap .topConsulInfo > p {
	font-size: 15px;
	line-height: 2em;
	padding: 0;
	margin: 0;
	text-align: justify;
	text-justify: inter-ideograph;
}

/*装飾*/
#topConsul .ttlScroll {
	display: block;
	padding: 0;
	margin: 0;
	position: absolute;
	top: -50px;
	left: unset;
	right: 50px;
	z-index: 5;
	font-family: var(--font-en);
	font-size: 14px;
	line-height: 1.4em;
	color: var(--main);
	text-align: left;
	text-transform: uppercase;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#topConsul {
		width: 100%;
		padding: 50px 0;
	}
	#topConsul::before {
		width: calc(100%);
		height: 100%;
		right: unset;
		left: 0;
		top: 30px;
		transform: unset;
		background-size: 120%;
	}
	#topConsul > header {
		width: calc(100% - 60px);
		max-width: 100%;
		margin: 0 auto 30px;
		padding: 0;
		flex-wrap: wrap;
		column-gap: 0;
	}
	#topConsul > header > em {
		display: block;
		font-size: 45px;
		margin-bottom: 5px;
	}
	#topConsul > header > h2 {
		font-size: 14px;
		line-height: 1;
	}
	#topConsul .topConsulWrap {
		width: calc(100%);
		max-width: 100%;
	}
	#topConsul .topConsulWrap::before {
		content: '';
		display: block;
		width: calc(100% - 80px);
		height: calc(100% + 70px);
		right: 0;
		left: unset;
	}
	#topConsul .topConsulInfo {
		width: calc(100% - 60px);
		margin: 0 auto;
		padding: 0;
		order: 1;
	}
	/*画像*/
	#topConsul .topConsulWrap > figure {
		width: calc(100% - 60px);
		padding: 0 0 0 30px;
		margin: 0 0 15px auto;
		position: relative;
		top: unset;
		left: unset;
		right: unset;
	}
	#topConsul .topConsulWrap > figure::before {
		content: '';
		display: block;
		padding-top: 75%;
	}
	/*情報*/
	#all_wrap .topConsulInfo > h3 {
		padding: 0 0 20px;
		margin: 0 0 20px;
		font-size: 20px;
	}
	#all_wrap .topConsulInfo > h3::before {
		width: 50px;
	}
	#all_wrap .topConsulInfo > p {
		font-size: 14px;
	}
	#all_wrap .topConsulInfo > .moreBtn {
		justify-content: center;
		margin-top: 20px !important;
	}

	/*装飾*/
	#topConsul .ttlScroll {
		top: 15px;
		left: 50px;
		right: unset;
	}
}


/************************************************************/
/*　トップ　ニュース
/************************************************************/
#topNews {
	width: 100%;
	padding: 50px 0 150px;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}
.topNewsWrap {
	width: 100%;
	max-width: 1080px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-around;
	flex-wrap: nowrap;
	column-gap: 150px;
}
.topNewsWrap > header {
	padding: 0;
	margin: 0;
	position: relative;
}
.topNewsWrap > header > em {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 90px;
	line-height: 1;
	font-style: normal;
}
.topNewsWrap > header > h2 {
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
	font-size: 20px;
	line-height: 1;
	white-space: nowrap;
}
/*リスト*/
#all_wrap .newsList {
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	position: relative;
}
#all_wrap.sub_page .newsList {
	max-width: 900px;
	margin: 0 auto;
}
#all_wrap .newsList > li {
	width: 100%;
	padding: 40px 0;
	margin: 0 auto;
	border-bottom: 1px solid #ececec;
	position: relative;
	list-style: none;
}
#all_wrap .newsList > li::before,
#all_wrap .newsList > li::after {
	display: none;
}
#all_wrap .newsList > li:first-child {
	padding-top: 15px;
}
#all_wrap .newsList > li > h3 {
	padding: 0;
	margin: 0 auto;
	border: none;
	background: none;
	position: relative;
	text-align: justify;
	text-justify: inter-ideograph;
}
#all_wrap .newsList > li > h3 a {
	font-size: 15px;
	line-height: 1.4em;
	text-decoration: none;
	color: var(--text);
	transition: var(--ease);
}
#all_wrap .newsList > li > h3 a:hover {
	text-decoration: none;
	color: var(--link);
	transition: var(--ease);
}
#all_wrap .newsList > li .date {
	display: block;
	color: #838383;
	font-family: var(--font-en);
	font-size: 12px;
	line-height: 1;
	font-weight: lighter;
	margin-right: 10px;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#topNews {
		width: 100%;
		padding: 0 0 50px;
	}
	.topNewsWrap {
		width: calc(100% - 60px);
		max-width: 100%;
		flex-wrap: wrap;
		column-gap: 0;
	}
	.topNewsWrap > header {
		width: 100%;
		display: flex;
		display: -webkit-flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		column-gap: 10px;
		padding: 0;
		margin: 0 auto 10px;
		position: relative;
	}
	.topNewsWrap > header > em {
		font-size: 45px;
	}
	.topNewsWrap > header > h2 {
		font-size: 14px;
	}
	/*リスト*/
	#all_wrap.sub_page .newsList {
		max-width: calc(100% - 60px);
		margin: 0 auto;
	}
	#all_wrap .newsList > li {
		width: 100%;
		padding: 15px 0;
	}
	#all_wrap .newsList > li:first-child {
		padding-top: 10px;
	}
	#all_wrap .newsList > li > h3 {
		padding: 0;
		margin: 10px auto 0;
	}
	#all_wrap .newsList > li > h3 a {
		font-size: 14px;
	}
	#all_wrap .newsList > li .date {
		font-size: 14px;
	}
	
	#all_wrap .newsList + .moreBtn {
		justify-content: center;
		margin-top: 20px !important;
	}
}

/************************************************************/
/*　トップ　お問い合わせ
/************************************************************/
#topContact {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/09/topContact_bg-scaled.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	z-index: 0;
}
#topContact::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: 0.85;
}
#topContact > em {
	display: block;
	padding: 0;
	margin: 0 auto 40px;
	font-family: var(--font-en);
	font-size: 75px;
	line-height: 1;
	font-style: normal;
	color: #fff;
	text-align: center;
	text-transform: uppercase;
}
#topContact > h2 {
	padding: 0;
	margin: 0 auto 20px;
	font-size: 25px;
	line-height: 1;
	font-style: normal;
	color: #fff;
	border: none;
	background: none;
	position: relative;
	text-align: center;
}
#topContact > p {
	padding: 0;
	margin: 0 auto;
	text-align: center;
	font-size: 15px;
	line-height: 2em;
	color: #fff;
}
#all_wrap .contactBtn {
	padding: 0;
	margin: 0 auto;
	margin-top: 40px;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	column-gap: 15px;
	list-style: none;
}
#all_wrap .contactBtn > li {
	padding: 0;
	margin: 0;
	position: relative;
}
#all_wrap .contactBtn > li > a {
	display: inline-flex;
	display: -webkit-inline-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	padding: 25px 60px;
	margin: 0;
	background: #fff;
	column-gap: 10px;
	color: var(--text);
	text-decoration: none;
	transition: var(--ease);
	height: 70px;
}
#all_wrap .contactBtn > li img {
	display: inline-block;
	width: 18px;
}
#all_wrap .contactBtn > li span {
	display: inline-block;
	font-size: 16px;
	line-height: 1;
}
#all_wrap .contactBtn > li > a:hover {
	opacity: 0.8;
	transition: var(--ease);
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#topContact {
		width: 100%;
		padding: 50px 0;
		margin: 0 auto;
	}
	#topContact > em {
		width: calc(100% - 60px);
		margin: 0 auto 20px;
		font-size: 45px;
	}
	#topContact > h2 {
		width: calc(100% - 60px);
		margin: 0 auto 10px;
		font-size: 20px;
		line-height: 1.4em;
	}
	#topContact > p {
		width: calc(100% - 60px);
		font-size: 14px;
		text-align: justify;
		text-justify: inter-ideograph;
	}
	#all_wrap .contactBtn {
		width: calc(90% - 60px);
		padding: 0;
		margin: 0 auto;
		margin-top: 20px;
		column-gap: 0;
		grid-row-gap: 15px;
	}
	#all_wrap .contactBtn > li {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
	}
	#all_wrap .contactBtn > li > a {
		width: 100%;
		padding: 15px 30px;
		column-gap: 10px;
		height: auto;
	}
	#all_wrap .contactBtn > li img {
		display: inline-block;
		width: 15px;
	}
	#all_wrap .contactBtn > li span {
		display: inline-block;
		font-size: 16px;
		line-height: 1;
	}
}


/************************************************************/
/*　会社概要
/************************************************************/
/*表*/
#all_wrap table.touroku_num {
	overflow: hidden;
	table-layout: fixed;
	border: none;
	background: none;
	padding: 0;
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	border-radius: 0;
	overflow: hidden;
	border-spacing: 0;
}
#all_wrap table.touroku_num th {
	font-style: normal;
	font-feature-settings: "palt";
	border: none;
	border-bottom: none;
	text-align: left;
	vertical-align: middle;
	font-family: var(--font-jp);
	font-size: 10px;
	line-height: 1.2em;
	font-weight: 500;
	background: none;
	color: var(--text);
	padding: 10px 5px;
	margin: 0;
	width: 30%;
	border-bottom: 2px solid var(--main);
}
#all_wrap table.touroku_num td {
	display: table-cell;
	border: none;
	background: none;
	vertical-align: inherit;
	border-bottom: none;
	padding: 10px 5px;
	margin: 0;
	font-size: 10px;
	line-height: 1.2em;
	font-weight: 300;
	border-bottom: 1px solid #ddd;
}
#all_wrap table.touroku_num td > p:last-of-type {
	margin-bottom: 0;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#all_wrap .js-scrollable {
		overflow-x: scroll !important;
		width: 100%;
	}
	#all_wrap .scroll-hint-icon {
		top: 50px;
	}
	/*表*/
	#all_wrap table.touroku_num {
		overflow: hidden;
		table-layout: fixed;
		border: none;
		background: none;
		padding: 0;
		width: 250%;
		max-width: 250%;
		margin: 0 auto;
		border-radius: 0;
		overflow: hidden;
		border-spacing: 0;
	}
	#all_wrap table.touroku_num th {
		display: table-cell;
		font-style: normal;
		font-feature-settings: "palt";
		border: none;
		border-bottom: none;
		text-align: left;
		vertical-align: middle;
		font-family: var(--font-jp);
		font-size: 10px;
		line-height: 1.2em;
		font-weight: 500;
		background: none;
		color: var(--text);
		padding: 10px 5px;
		margin: 0;
		width: 30%;
		border-bottom: 2px solid var(--main);
	}
	#all_wrap table.touroku_num td {
		display: table-cell;
		border: none;
		background: none;
		vertical-align: inherit;
		border-bottom: none;
		padding: 10px 5px;
		margin: 0;
		font-size: 10px;
		line-height: 1.2em;
		font-weight: 300;
		border-bottom: 1px solid #ddd;
	}
	#all_wrap table.touroku_num td > p:last-of-type {
		margin-bottom: 0;
	}
}

/************************************************************/
/*　事業内容
/************************************************************/
#content_oss {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: stretch;
	align-items: stretch;
	flex-wrap: wrap;
	column-gap: 50px;
	grid-row-gap: 0;
}
#content_oss .oss_left {
	width: calc(50% - 25px);
	padding: 0;
	margin: 0;
	position: relative;
}
#content_oss .oss_right {
	width: calc(50% - 25px);
	min-height: 420px;
	padding: 20px 30px 30px 50px;
	margin: 0;
	position: relative;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/09/onestopsup_bg.webp');
	background-position: top center;
	background-repeat: no-repeat;
	background-size: 100%;
}
#all_wrap #content_oss h3 {
	font-size: 25px;
	line-height: 1.4em;
	color: var(--main);
	padding: 0;
	margin: 0 auto 5px;
	border: none;
	background: none;
	position: relative;
}
#all_wrap #content_oss .oss_right h3 {
	text-align: center;
	margin-bottom: 20px;
}
#all_wrap #content_oss h3::before,
#all_wrap #content_oss .oss_right h3::before {
	display: none;
}
#all_wrap #content_oss p {
	padding: 0;
	margin: 0 auto 20px;
	text-align: justify;
	text-justify: inter-ideograph;
}
#all_wrap #content_oss p:last-of-type {
	margin-bottom: 0;
}
/*画像*/
#content_oss .oss_btm {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
}
#content_oss .oss_btm figure {
	margin-top: 20px;
}
#content_oss .oss_btm figure img {
	width: 100%;
	height: auto;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#content_oss {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		align-content: stretch;
		align-items: stretch;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 30px;
	}
	#content_oss .oss_left {
		width: 100%;
		padding: 0;
		margin: 0;
		position: relative;
	}
	#content_oss .oss_right {
		width: 100%;
		min-height: 330px;
		padding: 20px 20px 130px 40px;
		margin: 0;
		position: relative;
		background-image: url(https://presence-m.com/wp/wp-content/uploads/2023/09/onestopsup_bg.webp);
		background-position: top center;
		background-repeat: no-repeat;
		background-size: 100%;
	}
	#all_wrap #content_oss h3 {
		font-size: 18px;
		line-height: 1.4em;
		color: var(--main);
		padding: 0;
		margin: 0 auto 5px;
		border: none;
		background: none;
		position: relative;
	}
	#all_wrap #content_oss .oss_right h3 {
		text-align: center;
		margin-bottom: 10px;
	}
	#all_wrap #content_oss .oss_right .refList {
		font-size: 12px;
	}
	#all_wrap #content_oss p {
		padding: 0;
		margin: 0 auto 10px;
		text-align: justify;
		text-justify: inter-ideograph;
	}
	#all_wrap #content_oss p:last-of-type {
		margin-bottom: 0;
	}
	/*画像*/
	#content_oss .oss_btm {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
	}
	#content_oss .oss_btm figure {
		margin-top: 10px;
	}
	#content_oss .oss_btm figure img {
		width: 100%;
		height: auto;
	}
	
	/*画像補正*/
	#all_wrap img.alignleft,
	#all_wrap img.alignright {
		width: 100%;
		margin: 0 auto 20px;
	}
}

/************************************************************/
/*　登録喀痰吸引等事業者になる目的
/************************************************************/
.stickyWrap {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.stickyWrap > figure {
	width: 500px;
	height: 500px;
	padding: 0;
	margin: 0;
	position: sticky;
	top: 208px;
	right: 0;
}
.stickyWrap > figure img {
	width: 100%;
	height: auto;
}
.stickyWrap > .stickyInfo {
	width: calc(100% - 500px);
	padding: 0 100px;
	margin: 0;
	position: relative;
}
#all_wrap .stickyWrap > .stickyInfo > h2 {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0 auto 20px;
	font-size: 30px;
	line-height: 1.4em;
	font-feature-settings: "palt" 1;
	font-style: normal;
	border: none;
	position: relative;
	z-index: 0;
}
#all_wrap .stickyWrap > .stickyInfo > h2::before,
#all_wrap .stickyWrap > .stickyInfo > h2::after {
	display: none;
}
#all_wrap .stickyWrap > .stickyInfo > p {
	padding: 0;
	text-align: justify;
	text-justify: inter-ideograph;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	.stickyWrap {
		width: calc(100% - 60px);
		padding: 0;
		margin: 0 auto;
		flex-wrap: wrap;
	}
	.stickyWrap > figure {
		width: 100%;
		height: auto;
		padding: 0;
		margin: 0 auto;
		position: relative;
		top: unset;
		right: unset;
	}
	.stickyWrap > .stickyInfo {
		width: calc(100%);
		padding: 0;
		margin: 0 auto 50px;
		position: relative;
	}
	#all_wrap .stickyWrap > .stickyInfo > h2 {
		display: block;
		width: 100%;
		padding: 0;
		margin: 0 auto 10px;
		font-size: 20px;
		line-height: 1.4em;
		font-feature-settings: "palt" 1;
		font-style: normal;
		border: none;
		position: relative;
		z-index: 0;
	}
	#all_wrap .stickyWrap > .stickyInfo > h2::before,
	#all_wrap .stickyWrap > .stickyInfo > h2::after {
		display: none;
	}
	#all_wrap .stickyWrap > .stickyInfo > p {
		padding: 0;
		text-align: justify;
		text-justify: inter-ideograph;
	}
	#all_wrap .stickyWrap > .stickyInfo > p.mb100 {
		margin-bottom: 50px;
	}
}

/************************************************************/
/*　受講の流れとサポート
/************************************************************/
/*blockquote*/
.inner > blockquote {
	padding: 60px 30px 30px;
	margin: 0 auto;
	border: 5px solid #eee;
	background: #fafafa !important;
	position: relative;
	box-sizing: border-box;
}
.inner > blockquote dl {
	padding: 0;
	margin: 0 auto 30px;
	position: relative;
}
.inner > blockquote dl:last-of-type {
	margin-bottom: 0;
}
.inner > blockquote dt {
	padding: 0 0 0 15px;
	margin: 0 auto 10px;
	font-size: 16px;
	line-height: 1.4em;
	font-weight: bold;
	border-left: 3px solid var(--main);
}
.inner > blockquote dd {
	padding: 0 0 0 15px;
	margin: 0 auto;
	font-weight: bold;
	border-left: 3px solid #eee;
	font-weight: 300;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*blockquote*/
	.inner > blockquote {
		padding: 40px 20px 20px;
	}
	.inner > blockquote dl {
		margin: 0 auto 20px;
	}
	.inner > blockquote dt {
		padding: 0 0 0 10px;
		font-size: 15px;
	}
	.inner > blockquote dd {
		padding: 0 0 0 10px;
	}
}

/*dlブロック*/
.inner > .grayBlock {
	padding: 40px;
	background: #fafafa;
	border: 1px solid #fff;
	box-shadow: 10px 10px 25px rgba(211,211,211,.6), -5px -5px 40px rgba(255,255,255,.7);
	position: relative;
	box-sizing: border-box;
}
.inner > .grayBlock dl {
	padding: 0;
	margin: 0 auto 30px;
	position: relative;
}
.inner > .grayBlock dl:last-of-type {
	margin-bottom: 0;
}
.inner > .grayBlock dt {
	padding: 0 0 0 15px;
	margin: 0 auto 10px;
	font-size: 16px;
	line-height: 1.4em;
	font-weight: bold;
	border-left: 3px solid var(--main);
}
.inner > .grayBlock dd {
	padding: 0 0 0 15px;
	margin: 0 auto;
	font-weight: bold;
	border-left: 3px solid #eee;
	font-weight: 300;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*dlブロック*/
	.inner > .grayBlock {
		padding: 20px;
		background: #fafafa;
		border: 1px solid #fff;
		box-shadow: 10px 10px 25px rgba(211,211,211,.6), -5px -5px 40px rgba(255,255,255,.7);
		position: relative;
		box-sizing: border-box;
	}
	.inner > .grayBlock dl {
		margin: 0 auto 20px;
	}
	.inner > .grayBlock dt {
		padding: 0 0 0 10px;
		margin: 0 auto 10px;
		font-size: 15px;
	}
	.inner > .grayBlock dd {
		padding: 0 0 0 10px;
		margin: 0 auto;
	}
}

/*受講の流れ*/
#all_wrap .pageContents .content .flowchart {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	flex-wrap: wrap;
	grid-row-gap: 50px;
}
#all_wrap .pageContents .content .flowchart > li {
	width: 100%;
	padding: 15px;
	margin: 0 auto;
	position: relative;
	border-radius: 5px;
	border: 2px solid var(--text);
	background: #fff;
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	line-height: 1.4em;
	color: var(--text);
}
#all_wrap .pageContents .content .flowchart > li.blue {
	background: #91c1ea;
	color: #fff;
}
#all_wrap .pageContents .content .flowchart > li.red {
	background: #eb9c99;
	color: #fff;
}
#all_wrap .pageContents .content .flowchart > li::before,
#all_wrap .pageContents .content .flowchart > li::after {
	display: none;
}
#all_wrap .pageContents .content .flowchart > li::before {
	content: '';
	display: block;
	width: 30px;
	height: 20px;
	padding: 0;
	margin: 0;
	background: #cccccc;
	border: none;
	border-radius: 0;
	position: absolute;
	top: unset;
	bottom: -30px;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
}
#all_wrap .pageContents .content .flowchart > li::after {
	content: '';
	display: block;
	width: 50px;
	height: 15px;
	padding: 0;
	margin: 0;
	background: #cccccc;
	border: none;
	border-radius: 0;
	position: absolute;
	top: unset;
	bottom: -40px;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	clip-path: polygon(0 0, 50% 100%, 100% 0);
}
#all_wrap .pageContents .content .flowchart > li:last-child::before,
#all_wrap .pageContents .content .flowchart > li:last-child::after {
	display: none;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*受講の流れ*/
	#all_wrap .pageContents .content .flowchart {
		width: 100%;
		grid-row-gap: 35px;
	}
	#all_wrap .pageContents .content .flowchart > li {
		width: 100%;
		padding: 10px;
		font-size: 18px;
	}
	#all_wrap .pageContents .content .flowchart > li::before {
		width: 20px;
		height: 10px;
		bottom: -20px;
	}
	#all_wrap .pageContents .content .flowchart > li::after {
		width: 35px;
		height: 12px;
		bottom: -32px;
	}
}

/************************************************************/
/*　実地先 病院 紹介
/************************************************************/

/*実習テーブル*/
#all_wrap .practiceTable {
	width: 100%;
	padding: 0;
	margin: 0;
	border-top: 1px solid var(--text);
	border-left: 1px solid var(--text);
}
#all_wrap .practiceTable th {
	padding: 10px;
	margin: 0;
	background: #dfeaf5;
	border-bottom: 1px solid var(--text);
	border-right: 1px solid var(--text);
	text-align: center;
}
#all_wrap .practiceTable td {
	padding: 10px;
	margin: 0;
	background: #fff;
	border-bottom: 1px solid var(--text);
	border-right: 1px solid var(--text);
	text-align: center;
}
#all_wrap .practiceTable tr.blueBg td {
	padding: 10px;
	margin: 0;
	background: #2d71bb;
	border-bottom: 1px solid var(--text);
	border-right: 1px solid var(--text);
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	color: #fff;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*実習テーブル*/
	#all_wrap .practiceTable {
		width: 150%;
		max-width: 150%;
		padding: 0;
		margin: 0;
		border-top: 1px solid var(--text);
		border-left: 1px solid var(--text);
	}
	#all_wrap .practiceTable th {
		display: table-cell;
		padding: 10px;
		color: var(--main);
	}
	#all_wrap .practiceTable td {
		display: table-cell;
		padding: 10px;
	}
	#all_wrap .practiceTable tr.blueBg td {
		display: table-cell;
		padding: 10px;
	}
}

/*バナーリスト*/
#all_wrap .content .banList {
	width: 100%;
	padding: 0;
	margin: 30px auto;
	list-style: none;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	column-gap: 20px;
}
#all_wrap .content .banList > li {
	width: auto;
	height: auto;
	padding: 0;
	margin: 0;
}
#all_wrap .content .banList > li::before,
#all_wrap .content .banList > li::after {
	display: none;
}
#all_wrap .content .banList > li img {
	width: auto;
}

/************************************************************/
/*　お問い合わせ
/************************************************************/
#formarea {
	width: 100%;
	max-width: 900px;
	padding: 0;
	margin: 0 auto;
	position: relative;
}
#formarea p.center {
	text-align: center;
}
#formarea p.right {
	text-align: right;
}
/*フォームチェックリスト*/
#all_wrap .form_check {
	width: 100%;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	list-style: none;
	border-top: 1px solid #ddd;
}
#all_wrap .form_check > li {
	width: 100%;
	padding: 30px;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	border-bottom: 1px solid #ddd;
}
#all_wrap .form_check > li::before,
#all_wrap .form_check > li::after {
	display: none;
}
#all_wrap .form_check > li > .qe {
	display: inline-block;
	padding: 0;
	margin: 0 20px 0 0;
	font-size: 30px;
	line-height: 1;
	font-weight: bold;
	font-family: var(--font-en);
	color: var(--main);
}
#all_wrap .form_check > li > p {
	padding: 0;
	margin: 0;
}
#all_wrap .form_check > li > .checkbox {
	display: inline-flex;
	align-items: center;
	align-content: center;
	flex-wrap: nowrap;
	margin: 0 0 0 auto;
}
#all_wrap .form_check > li label {
	display: block;
	width: 30px;
	height: 30px;
	cursor: pointer;
}
#all_wrap .form_check > li label .mwform-checkbox-field-text {
	display: none;
}
#all_wrap .form_check > li input[type="checkbox"] {
	display: block;
	width: 30px;
	height: 30px;
	background: #fafafa;
	border-radius: 3px;
	cursor: pointer;
	border: 1px solid #ddd;
}
#all_wrap .form_check > li input[type="number"] {
	display: block;
	width: 50px;
	min-height: 30px;
	padding: 7px 10px;
	margin-right: 5px;
	background: #fff;
	border-radius: 3px;
	cursor: pointer;
	border: 1px solid #555;
}

/*フォームテーブル*/
#all_wrap table.contactform {
	overflow: hidden;
	table-layout: fixed;
	border: none;
	background: none;
	padding: 0;
	width: 100%;
	max-width: 100%;
	margin: 0 auto 50px;
	border-radius: 0;
	overflow: hidden;
	border-spacing: 10px;
}
#all_wrap table.contactform th {
	font-style: normal;
	font-feature-settings: "palt";
	border: none;
	border-bottom: none;
	text-align: left;
	vertical-align: middle;
	font-family: var(--font-jp);
	font-size: 15px;
	line-height: 1.2em;
	font-weight: bold;
	background: none;
	color: var(--main);
	padding: 20px;
	margin: 0;
	width: 30%;
	border-bottom: 1px solid #ddd;
	position: relative;
}
#all_wrap table.contactform th > span {
	display: inline-block;
	padding: 3px 5px;
	margin: 0;
	background: #c93e3e;
	font-size: 10px;
	line-height: 1;
	color: #fff;
	font-weight: lighter;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0,-50%);
}
#all_wrap table.contactform th > small {
	display: block;
	font-size: 0.7em;
}
#all_wrap table.contactform td {
	display: table-cell;
	border: none;
	background: none;
	vertical-align: inherit;
	border-bottom: none;
	padding: 20px;
	margin: 0;
	font-size: 15px;
	font-weight: 300;
	border-bottom: 1px solid #ddd;
}
#all_wrap .content table.contactform td > p:last-of-type {
	margin-bottom: 0;
}

/*フォーム*/
#all_wrap table.contactform td input[type="text"],
#all_wrap table.contactform td input[type="email"] {
	padding: 10px;
	margin: 0;
	border-radius: 3px;
	background: #fff;
	border: 1px solid #ddd;
	outline: none;
}
#all_wrap table.contactform td.w50 input[type="text"],
#all_wrap table.contactform td.w50 input[type="email"] {
	width: 50%;
}
#all_wrap table.contactform td select {
	padding: 10px;
	margin: 0;
	border-radius: 3px;
	background: #fff;
	border: 1px solid #ddd;
	outline: none;
}
#all_wrap table.contactform td textarea {
	width: 100%;
	padding: 10px;
	margin: 0;
	border-radius: 3px;
	background: #fff;
	border: 1px solid #ddd;
	outline: none;
}
/*半フォーム*/
#all_wrap table.contactform td .inputWrap {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 20px;
}
#all_wrap table.contactform td .inputWrap > div {
	width: calc(50% - 10px);
	padding: 0;
	margin: 0;
}
#all_wrap table.contactform td .inputWrap > div input {
	width: 100%;
}
/*ボタン*/
.contactBtn {
	text-align: center;
	padding: 0;
	margin: 0 auto;
}
.contactBtn input[type="submit"] {
	display: inline-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	width: auto;
	padding: 20px 50px;
	margin: 0 auto;
	background: var(--main);
	font-size: 20px;
	line-height: 1;
	font-weight: 300;
	color: #fff;
	text-align: center;
	border: none;
	position: relative;
	border-radius: 5px;
	transition: var(--ease);
}
.contactBtn input[type="submit"]:hover {
	opacity: 0.8;
	transition: var(--ease);
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*フォームテーブル*/
	#all_wrap table.contactform {
		overflow: hidden;
		table-layout: fixed;
		border: none;
		background: none;
		padding: 0;
		width: 100%;
		max-width: 100%;
		margin: 0 auto 30px;
		border-radius: 0;
		overflow: hidden;
		border-spacing: 0;
	}
	#all_wrap table.contactform th {
		display: block;
		font-style: normal;
		font-feature-settings: "palt";
		border: none;
		border-bottom: none;
		text-align: left;
		vertical-align: middle;
		font-family: var(--font-jp);
		font-size: 15px;
		font-weight: bold;
		background: none;
		color: var(--main);
		padding: 20px 10px 0;
		margin: 0;
		width: 100%;
		border-bottom: none;
		position: relative;
	}
	#all_wrap table.contactform th > span {
		display: inline-block;
		padding: 3px 5px;
		margin: 0;
		background: #c93e3e;
		font-size: 10px;
		line-height: 1;
		color: #fff;
		font-weight: lighter;
		position: absolute;
		top: 70%;
		right: 10px;
		transform: translate(0,-50%);
	}
	#all_wrap table.contactform td {
		display: block;
		border: none;
		background: none;
		vertical-align: inherit;
		border-bottom: none;
		padding: 10px 10px 30px;
		margin: 0;
		font-size: 15px;
		font-weight: 300;
		border-bottom: 1px solid #ddd;
	}
	#all_wrap .content table.contactform td > p:last-of-type {
		margin-bottom: 0;
	}
	/*フォーム*/
	#all_wrap table.contactform td input[type="text"],
	#all_wrap table.contactform td input[type="email"] {
		width: 100%;
		padding: 10px;
		margin: 0;
		border-radius: 3px;
		background: #fff;
		border: 1px solid #ddd;
		outline: none;
	}
	#all_wrap table.contactform td.w50 input[type="text"],
	#all_wrap table.contactform td.w50 input[type="email"] {
		width: 100%;
	}
	#all_wrap table.contactform td select {
		padding: 10px;
		margin: 0;
		border-radius: 3px;
		background: #fff;
		border: 1px solid #ddd;
		outline: none;
	}
	#all_wrap table.contactform td textarea {
		width: 100%;
		padding: 10px;
		margin: 0;
		border-radius: 3px;
		background: #fff;
		border: 1px solid #ddd;
		outline: none;
	}
	/*半フォーム*/
	#all_wrap table.contactform td .inputWrap {
		display: flex;
		display: -webkit-flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		flex-wrap: nowrap;
		column-gap: 20px;
	}
	#all_wrap table.contactform td .inputWrap > div {
		width: calc(50% - 10px);
		padding: 0;
		margin: 0;
	}
	#all_wrap table.contactform td .inputWrap > div input {
		width: 100%;
	}
	/*ボタン*/
	.contactBtn {
		text-align: center;
		padding: 0;
		margin: 0 auto;
	}
	.contactBtn input[type="submit"] {
		display: inline-flex;
		justify-content: center;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		padding: 20px 50px;
		margin: 0 auto;
		background: var(--main);
		font-size: 20px;
		line-height: 1;
		font-weight: 300;
		color: #fff;
		text-align: center;
		border: none;
		position: relative;
		border-radius: 5px;
		transition: var(--ease);
	}
	.contactBtn input[type="submit"]:hover {
		opacity: 0.8;
		transition: var(--ease);
	}
}


/************************************************************/
/*　著者プロフィール
/************************************************************/
#authorBox {
	width: 100%;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#authorBox > dt {
	width: 100%;
	padding: 15px 20px;
	margin: 0;
	background: var(--main);
	font-size: 15px;
	line-height: 1;
	font-weight: 600;
	color: #fff;
	text-align: left;
}
#authorBox > dd {
	clear: both;
	padding: 30px;
	margin: 0;
	background: #fafafa;
	position: relative;
	z-index: 0;
	overflow: hidden;
}
#authorBox > dd::after {
	content: 'PROFILE';
	display: block;
	width: 100%;
	height: 50px;
	text-align: right;
	padding: 0;
	margin: 0;
	font-family: var(--font-en);
	font-size: 80px;
	line-height: 50px;
	text-align: right;
	text-transform: uppercase;
	color: #fff;
	white-space: nowrap;
	position: absolute;
	bottom: 0;
	right: -10px;
	z-index: -1;
}
#authorBox > dd > figure {
	width: 150px;
	padding: 0;
	margin: 0 20px 20px 0;
	position: relative;
	overflow: hidden;
	text-align: center;
	float: left;
}
#authorBox > dd > figure::before {
	content: '';
	display: block;
	padding: 50%;
}
#authorBox > dd > figure img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	object-fit: cover;
}
#authorBox > dd h4 {
	font-size: 16px;
	line-height: 1.4em;
	padding: 0;
	margin: 0 0 10px;
	position: relative;
}
#authorBox > dd h4::before,
#authorBox > dd h4::after {
	display: none;
}
#authorBox > dd h4 small {
	display: block;
}
#all_wrap #authorBox > dd p {
	font-size: 12px;
	line-height: 1.7em;
	padding: 0;
	margin: 0;
	text-align: justify;
	text-justify: inter-ideograph;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#authorBox {
		width: 100%;
		padding: 0;
		margin: 0 auto 30px;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	#authorBox > dt {
		width: 100%;
		padding: 12px 20px;
		font-size: 15px;
	}
	#authorBox > dd {
		clear: both;
		padding: 20px;
	}
	#authorBox > dd::after {
		content: 'PROFILE';
		display: block;
		width: 100%;
		height: 40px;
		font-size: 40px;
		line-height: 40px;
		bottom: -9px;
		right: -5px;
	}
	#authorBox > dd > figure {
		width: 130px;
		padding: 0;
		margin: 0 10px 10px 0;
		float: left;
	}
	#authorBox > dd > figure::before {
		content: '';
		display: block;
		padding: 50%;
	}
	#authorBox > dd > figure img {
		width: 100%;
		height: 100%;
		padding: 0;
		margin: 0;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		object-fit: cover;
	}
	#authorBox > dd h4 {
		font-size: 14px;
		line-height: 1.4em;
		padding: 0;
		margin: 0 0 10px;
		position: relative;
	}
	#authorBox > dd h4::before,
	#authorBox > dd h4::after {
		display: none;
	}
	#authorBox > dd h4 small {
		display: block;
	}
	#all_wrap #authorBox > dd p {
		font-size: 12px;
		line-height: 1.7em;
		padding: 0;
		margin: 0;
		text-align: justify;
		text-justify: inter-ideograph;
	}
}



/************************************************************/
/*　セミナー・対談 実績
/************************************************************/
#basemapArea {
	width: 100%;
	max-width: 1080px;
	padding: 0;
	margin: 0 auto;
	position: relative;
}
.basemapTxt {
	width: 450px;
	padding: 20px;
	margin: 0;
	position: absolute;
	top: 0;
	left: -100px;
	background: #fafafa;
	border: 2px solid #ddd;
}
#all_wrap .basemapTxt > h3 {
	padding: 0;
	margin: 0 auto 10px;
	position: relative;
	border: none;
	background: none;
	font-size: 16px;
	line-height: 1.4em;
}
#all_wrap .basemapTxt > h3::before,
#all_wrap .basemapTxt > h3::after {
	display: none;
}
#all_wrap .basemapTxt > p {
	padding: 0;
	margin: 0;
	font-size: 12px;
	line-height: 1.7em;
	text-align: justify;
	text-justify: inter-ideograph;
}
.basemap {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
}
.map_link {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
}
#all_wrap .basemap img {
	width: 100%;
	height: auto;
}
.basemap area {
	cursor: pointer;
}
/*リスト*/
#all_wrap .mapbox {
	width: 400px;
	padding: 30px;
	margin: 0 auto;
	background: rgba(40,73,119,0.7);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-radius: 10px;
	filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.1));
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	display: none;
	z-index: 10;
}
#all_wrap .mapbox figure {
	width: 100%;
	height: auto;
	padding: 0;
	margin: 0 auto 15px;
}
#all_wrap .mapbox figure img {
	width: 100%;
	height: auto;
}
#all_wrap .mapbox h3 {
	padding: 0;
	margin: 0 auto 5px;
	border: none;
	background: none;
	position: relative;
	font-size: 18px;
	line-height: 1.4em;
	color: #fff;
}
#all_wrap .mapbox span {
	display: block;
	padding: 0;
	margin: 0;
	font-size: 14px;
	line-height: 1.7em;
	text-align: justify;
	text-justify: inter-ideograph;
	color: #fff;
}
#all_wrap .l-wrapper-full .content .mapbox p {
	padding: 0;
	margin: 0;
	font-size: 14px;
	line-height: 1.7em;
	text-align: justify;
	text-justify: inter-ideograph;
	color: #fff;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#basemapArea {
		width: 100%;
		max-width: 100%;
	}
	.basemapTxt {
		width: 100%;
		padding: 20px;
		margin: 0 auto 30px;
		position: relative;
		top: unset;
		left: unset;
		background: #fafafa;
		border: 1px solid #ddd;
	}
	#all_wrap .basemapTxt > h3 {
		padding: 0;
		margin: 0 auto 10px;
		position: relative;
		border: none;
		background: none;
		font-size: 16px;
		line-height: 1.4em;
	}
	#all_wrap .basemapTxt > h3::before,
	#all_wrap .basemapTxt > h3::after {
		display: none;
	}
	#all_wrap .basemapTxt > p {
		padding: 0;
		margin: 0;
		font-size: 12px;
		line-height: 1.7em;
		text-align: justify;
		text-justify: inter-ideograph;
	}
	#all_wrap .basemapTxt > p:last-of-type {
		margin-bottom: 0;
	}
	.basemap {
		display: none;
	}
	/*リスト*/
	#all_wrap .mapbox {
		width: 100%;
		padding: 20px;
		margin: 0 auto 15px;
		background: #fff;
		backdrop-filter: unset;
		-webkit-backdrop-filter: unset;
		border-radius: 10px;
		border: 1px solid #ddd;
		filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.1));
		position: relative;
		top: unset;
		left: unset;
		transform: unset;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		flex-wrap: wrap;
		z-index: 10;
	}
	#all_wrap .mapbox figure {
		width: 120px;
		padding: 0;
		margin: 0;
		position: relative;
		overflow: hidden;
		text-align: center;
	}
	#all_wrap .mapbox figure::before {
		content: '';
		display: block;
		padding: 50%;
	}
	#all_wrap .mapbox figure img {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		object-fit: cover;
	}
	#all_wrap .mapbox_info {
		width: calc(100% - 140px);
		padding: 0;
		margin: 0;
	}
	#all_wrap .mapbox h3 {
		font-size: 15px;
		line-height: 1.4em;
		color: #1e1e1e;
	}
	#all_wrap .mapbox span {
		color: #1e1e1e;
		font-size: 12px;
		line-height: 1.7em;
	}
	#all_wrap .l-wrapper-full .content .mapbox p {
		color: #1e1e1e;
		font-size: 12px;
		line-height: 1.4em;
		padding: 0;
		margin: 0 auto !important;
		text-align: left;
	}
}

/*セミナーマップ*/
.seminarMap {
	width: 100%;
	padding: 150px 0 50px;
	margin: 0 auto;
	position: relative;
}
/*- 情報*/
.seminarMapInfo {
	width: 450px;
	padding: 20px;
	margin: 0;
	position: absolute;
	top: 0;
	left: -50px;
	background: #fafafa;
	border: 2px solid #ddd;
}
#all_wrap .seminarMapInfo > h3 {
	padding: 0;
	margin: 0 auto 10px;
	position: relative;
	border: none;
	background: none;
	font-size: 16px;
	line-height: 1.4em;
}
#all_wrap .seminarMapInfo > h3::before,
#all_wrap .seminarMapInfo > h3::after {
	display: none;
}
#all_wrap .seminarMapInfo > p {
	padding: 0;
	margin: 0;
	font-size: 12px;
	line-height: 1.7em;
	text-align: justify;
	text-justify: inter-ideograph;
}
#all_wrap .content .seminarSearch {
	width: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	column-gap: 20px;
	line-height: 1;
}
.seminarSearch span:first-of-type {
	display: block;
	height: 20px;
	width: auto;
}
.seminarSearch span:last-of-type {
	display: block;
	height: 50px;
	width: auto;
}
.seminarSearch span img {
	width: auto;
	height: 100%;
	vertical-align: middle;
}

/*- 情報*/
.seminarMapContent {
	width: 350px;
	padding: 20px;
	margin: 0;
	position: absolute;
	bottom: 0;
	right: -130px;
	background: #fafafa;
	border: 2px solid #ddd;
}
#all_wrap .seminarMapContent > h3 {
	padding: 0;
	margin: 0 auto 10px;
	position: relative;
	border: none;
	background: none;
	font-size: 16px;
	line-height: 1.4em;
}
#all_wrap .seminarMapContent > h3::before,
#all_wrap .seminarMapContent > h3::after {
	display: none;
}
#all_wrap .content .seminarMapContent ul.check {
	margin-bottom: 0;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*セミナーマップ*/
	.seminarMap {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
	}
	.seminarMap > figure {
		margin: 30px auto;
	}
	/*- 情報*/
	.seminarMapInfo {
		width: 100%;
		position: relative;
		top: unset;
		left: unset;
	}
	#all_wrap .content .seminarSearch {
		width: 100%;
		padding: 0;
		margin: 0;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		align-content: center;
		align-items: center;
		column-gap: 20px;
		line-height: 1;
	}
	.seminarSearch span:first-of-type {
		display: block;
		height: 20px;
		width: auto;
	}
	.seminarSearch span:last-of-type {
		display: block;
		height: 50px;
		width: auto;
	}
	.seminarSearch span img {
		width: auto;
		height: 100%;
		vertical-align: middle;
	}

	/*- 情報*/
	.seminarMapContent {
		width: 100%;
		padding: 20px;
		margin: 0;
		position: relative;
		bottom: unset;
		right: unset;
	}
}

/*スクエアリスト*/
#all_wrap .pageContents .content .flex.seminar ul {
	padding: 0;
	margin: 0;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	.flex.seminar {
		flex-wrap: wrap;
	}
	#all_wrap .pageContents .content .flex.seminar ul {
		width: 100%;
		padding: 0;
		margin: 0 auto 20px;
	}
}

/************************************************************/
/*　研修スケジュール
/************************************************************/
.innerfull .schedule iframe {
	width: 100%;
	height: 700px !important;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	.innerfull .schedule iframe {
		width: 100%;
		height: 500px !important;
	}
}


/************************************************************/
/*　コンサルティング
/************************************************************/
#all_wrap .content .consulListArea {
	margin-top: 100px;
	padding: 0;
}
#all_wrap .pageContents .content .consulList {
	width: 100%;
	max-width: 1050px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	column-gap: 4%;
	grid-row-gap: 50px;
}
#all_wrap .pageContents .content .consulList > li {
	width: 48%;
	padding: 60px 40px 40px;
	margin: 0;
	background: none;
	position: relative;
	display: flex;
	display: -webkit-flex;
	flex-direction: column;
	z-index: 0;
}
#all_wrap .pageContents .content .consulList > li::before,
#all_wrap .pageContents .content .consulList > li::after {
	display: none;
}
#all_wrap .pageContents .content .consulList > li::after {
	content: '';
	display: block;
	width: 100%;
	height: calc(100% - 100px);
	padding: 0;
	margin: 0;
	border-radius: 10px;
	background: #f2f3f7;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
#all_wrap .pageContents .content .consulList > li > em {
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	width: 120px;
	height: 140px;
	padding: 0;
	margin: 0;
	position: absolute;
	top: -80px;
	left: 20px;
	font-family: var(--font-en);
	font-size: 120px;
	font-style: normal;
	font-weight: bold;
	color: var(--main);
}
#all_wrap .pageContents .content .consulList > li > h2 {
	width: 100%;
	padding: 0 0 20px;
	margin: 0 auto 20px;
	border-bottom: 3px solid #fff;
	font-size: 24px;
	line-height: 1.4em;
	font-weight: bold;
	color: var(--text);
	letter-spacing: -0.02em;
}
#all_wrap .pageContents .content .consulList > li > h2::before {
	content: '';
	display: block;
	width: 100px;
	height: 3px;
	background: var(--main);
	position: absolute;
	bottom: -3px;
	left: 0;
	transform: translate(0,0);
	-webkit-transform: translate(0,0);
	z-index: 1;
}
#all_wrap .pageContents .content .consulList > li > p {
	width: 100%;
	font-size: 14px;
	line-height: 2em;
	padding: 0;
	margin: 0 auto 30px;
	text-align: justify;
	text-justify: inter-ideograph;
}
#all_wrap .pageContents .content .consulList > li > figure {
	width: 100%;
	padding: 0;
	margin: auto auto 0;
	position: relative;
	text-align: center;
	overflow: hidden;
	border-radius: 10px;
	filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.1));
}
#all_wrap .pageContents .content .consulList > li > figure::before {
	content: '';
	display: block;
	padding-top: 65%;
}
#all_wrap .pageContents .content .consulList > li > figure img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	object-fit: cover;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#all_wrap .content .consulListArea {
		margin-top: 50px;
		padding: 0;
	}
	#all_wrap .pageContents .content .consulList {
		width: calc(100% - 60px);
		max-width: 100%;
		column-gap: 0;
		grid-row-gap: 30px;
	}
	#all_wrap .pageContents .content .consulList > li {
		width: 100%;
		padding: 40px 30px 30px;
	}s
	#all_wrap .pageContents .content .consulList > li::after {
		content: '';
		display: block;
		width: 100%;
		height: calc(100% - 30px);
		padding: 0;
		margin: 0;
		border-radius: 10px;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
	}
	#all_wrap .pageContents .content .consulList > li > em {
		display: flex;
		justify-content: center;
		align-content: center;
		align-items: center;
		width: 80px;
		height: 90px;
		padding: 0;
		margin: 0;
		position: absolute;
		top: -50px;
		left: 15px;
		font-family: var(--font-en);
		font-size: 80px;
		font-style: normal;
		font-weight: bold;
	}
	#all_wrap .pageContents .content .consulList > li > h2 {
		width: 100%;
		padding: 0 0 20px;
		margin: 0 auto 20px;
		border-bottom: 2px solid #fff;
		font-size: 20px;
	}
	#all_wrap .pageContents .content .consulList > li > h2::before {
		content: '';
		display: block;
		width: 50px;
		height: 2px;
		bottom: -2px;
	}
	#all_wrap .pageContents .content .consulList > li > p {
		margin: 0 auto 20px;
	}
}


/************************************************************/
/*　履歴書LP
/************************************************************/
#resume_mv {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/10/mv.webp');
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	z-index: 0;
}
#resume_mv::after {
	content: '';
	display: block;
	width: 100%;
	height: 150px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: -1px;
	left: 0;
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
	z-index: -1;
}
#resume_mv > h1 {
	width: 100%;
	padding: 30px 50px;
	margin: 0 auto 50px;
	text-align: right;
}
#resume_mv > h1 img {
	width: auto;
	height: 40px;
	padding: 0;
	margin: 0;
}
/*情報*/
.resume_mvBox {
	width: 1100px;
	padding: 0 0 0 400px;
	margin: 0 auto 100px;
	position: relative;
}
#all_wrap .resume_mvBox > h2 {
	width: 100%;
	padding: 0;
	margin: 0 auto 30px;
	position: relative;
	border: none;
	background: none;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	grid-row-gap: 15px;
}
#all_wrap .resume_mvBox > h2 > strong {
	display: inline-block;
	padding: 5px 6px 9px;
	margin: 0;
	background: #fff;
	position: relative;
	font-size: 55px;
	line-height: 1em;
	font-weight: 500;
	white-space: nowrap;
}
#all_wrap .resume_mvBox > h2 > strong span {
	background: linear-gradient( to right, #284977 0, #3c88d3 100% );
	-webkit-background-clip: text;
	color: transparent;
}
/*ボタン*/
#all_wrap .resume_mvBtn {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
	column-gap: 30px;
}
#all_wrap .resume_mvBtn > li {
	width: calc(50% - 15px);
	padding: 0;
	margin: 0;
	position: relative;
	text-align: center;
}
#all_wrap .resume_mvBtn > li span {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 1em;
	font-family: var(--font-jp2);
	font-size: 18px;
	line-height: 1;
	margin: 0 auto 10px;
	text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
		-1px 1px 0 #FFF, 1px -1px 0 #FFF,
		0px 1px 0 #FFF,  0-1px 0 #FFF,
		-1px 0 0 #FFF, 1px 0 0 #FFF;
}
#all_wrap .resume_mvBtn > li span::before {
	content: '＼';
	display: inline;
}
#all_wrap .resume_mvBtn > li span::after {
	content: '／';
	display: inline;
}
#all_wrap .resume_mvBtn > li a {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	column-gap: 10px;
	padding: 20px 50px;
	margin: 0;
	border: 1px solid #fff;
	background: #449786;
	font-family: var(--font-jp2);
	font-size: 20px;
	line-height: 1;
	color: #fff;
	position: relative;
	overflow: hidden;
	transition: var(--ease);
	z-index: 0;
}
#all_wrap .resume_mvBtn > li:last-child a {
	background: #e7bc63;
}
#all_wrap .resume_mvBtn > li a::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	background: #d34646;
	position: absolute;
	top: 0;
	left: 0;
	transform: translateX(-100%);
	transition: var(--ease);
	z-index: -1;
}
#all_wrap .resume_mvBtn > li a::after {
	content: '';
	display: block;
	width: 5px;
	height: 5px;
	padding: 0;
	margin: 0;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translate(0,-50%) rotate(45deg);
	-webkit-transform: translate(0,-50%) rotate(45deg);
}
#all_wrap .resume_mvBtn > li a img {
	width: auto;
	height: 20px;
	padding: 0;
	margin: 0;
}
#all_wrap .resume_mvBtn > li a:hover::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	background: #d34646;
	position: absolute;
	top: 0;
	left: 0;
	transform: translateX(0);
	transition: var(--ease);
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#resume_mv {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
		background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/10/mv.webp');
		background-position: left center;
		justify-content: center;
	}
	#resume_mv::after {
		width: 100%;
		height: 50px;
	}
	#resume_mv > h1 {
		width: 100%;
		padding: 30px;
		margin: 0 auto;
		text-align: right;
	}
	#resume_mv > h1 img {
		width: auto;
		height: 30px;
	}
	/*情報*/
	.resume_mvBox {
		width: calc(100%);
		padding: 30px;
		margin: 0;
	}
	#all_wrap .resume_mvBox > h2 {
		width: 100%;
		padding: 0;
		margin: 0 auto 20px;
		grid-row-gap: 5px;
	}
	#all_wrap .resume_mvBox > h2 > strong {
		display: inline-block;
		padding: 5px 6px 9px;
		font-size: 25px;
	}
	/*ボタン*/
	#all_wrap .resume_mvBtn {
		width: 100%;
		column-gap: 0;
		grid-row-gap: 10px;
	}
	#all_wrap .resume_mvBtn > li {
		width: calc(50% - 5px);
		margin: 0;
	}
	#all_wrap .resume_mvBtn > li span {
		font-size: 10px;
		column-gap: 0;
		margin: 0 auto 5px;
	}
	#all_wrap .resume_mvBtn > li a {
		column-gap: 10px;
		padding: 10px 10px;
		font-size: 12px;
	}
	#all_wrap .resume_mvBtn > li a::after {
		display: none;
	}
	#all_wrap .resume_mvBtn > li a img {
		width: auto;
		height: 12px;
		padding: 0;
		margin: 0;
	}
}

/*お悩み*/
#resumeWorry {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}
#resumeWorry::before {
	content: '';
	display: block;
	width: 100%;
	height: calc(100% - 50px);
	background: var(--main);
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
#resumeWorry::after {
	content: '';
	display: block;
	width: 100%;
	height: 100px;
	background: var(--main);
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	position: absolute;
	bottom: -49px;
	left: 0;
	z-index: -1;
}
#resumeWorry > h2 {
	padding: 0;
	margin: 0 auto 30px;
	font-size: 55px;
	line-height: 1.4em;
	color: #fff;
	border: none;
	background: none;
	position: relative;
	text-align: center;
}
#all_wrap .resumeWorryList {
	width: 90%;
	max-width: 1100px;
	padding: 20px 40px 20px;
	margin: 0 auto 50px;
	background: #fff;
	border: 1px solid var(--main);
	box-sizing: border-box;
	position: relative;
	list-style: none;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	column-gap: 20px;
}
#all_wrap .resumeWorryList > li {
	width: calc(50% - 10px);
	padding: 20px 10px 20px 40px;
	margin: 0;
	border-bottom: 1px solid var(--sub);
	position: relative;
	font-size: 18px;
	line-height: 1.4em;
	font-weight: 500;
}
#all_wrap .resumeWorryList > li:nth-last-child(1),
#all_wrap .resumeWorryList > li:nth-last-child(2) {
	border-bottom: none;
}
#all_wrap .resumeWorryList > li::before {
	content: '';
	display: block;
	width: 22px;
	height: 22px;
	padding: 0;
	margin: 0;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/10/icon_check.svg');
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center;
	position: absolute;
	top: 22px;
	left: 10px;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*お悩み*/
	#resumeWorry {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
		z-index: 0;
	}
	#resumeWorry::before {
		content: '';
		display: block;
		width: 100%;
		height: calc(100% - 25px);
		background: var(--main);
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
	}
	#resumeWorry::after {
		content: '';
		display: block;
		width: 100%;
		height: 50px;
		background: var(--main);
		clip-path: polygon(0 0, 50% 100%, 100% 0);
		position: absolute;
		bottom: -25px;
		left: 0;
		z-index: -1;
	}
	#resumeWorry > h2 {
		padding: 0;
		margin: 0 auto 10px;
		font-size: 20px;
	}
	#all_wrap .resumeWorryList {
		width: calc(100% - 60px);
		max-width: 100%;
		padding: 10px 20px 10px;
		margin: 0 auto 30px;
		column-gap: 0;
	}
	#all_wrap .resumeWorryList > li {
		width: calc(100%);
		padding: 10px 10px 10px 40px;
		margin: 0;
		border-bottom: 1px solid var(--sub);
		position: relative;
		font-size: 14px;
		line-height: 1.4em;
		font-weight: 500;
	}
	#all_wrap .resumeWorryList > li:nth-last-child(1),
	#all_wrap .resumeWorryList > li:nth-last-child(2) {
		border-bottom: 1px solid var(--sub);
	}
	#all_wrap .resumeWorryList > li:last-child {
		border-bottom: none;
	}
}


/*ヘッダー*/
#resumeHeader {
	width: 100%;
	padding: 50px 0 0;
	margin: 0 auto;
	position: relative;
	text-align: center;
}
#resumeHeader > h2 {
	padding: 0;
	margin: 0 auto 15px;
	text-align: center;
}
#resumeHeader > h2 img {
	width: auto;
	height: 60px;
}
#resumeHeader > p {
	padding: 0;
	margin: 0 auto;
	text-align: center;
	font-size: 40px;
	line-height: 1.4em;
}
#resumeHeader > p strong {
	display: inline;
	position: relative;
	z-index: 0;
}
#resumeHeader > p strong::after {
	content: '';
	display: block;
	width: 100%;
	height: 10px;
	background: #ffa200;
	border-radius: 10px;
	position: absolute;
	bottom: 3px;
	left: 0;
	z-index: -1;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*ヘッダー*/
	#resumeHeader {
		width: 100%;
		padding: 25px 0 25px;
		margin: 0 auto;
		position: relative;
		text-align: center;
	}
	#resumeHeader > h2 {
		padding: 0;
		margin: 0 auto 5px;
		text-align: center;
	}
	#resumeHeader > h2 img {
		width: auto;
		height: 50px;
	}
	#resumeHeader > p {
		padding: 0;
		margin: 0 auto;
		text-align: center;
		font-size: 20px;
		line-height: 1.4em;
	}
	#resumeHeader > p strong::after {
		content: '';
		display: block;
		width: 100%;
		height: 5px;
		background: #ffa200;
		border-radius: 10px;
		position: absolute;
		bottom: 3px;
		left: 0;
		z-index: -1;
	}
}

/*メリット*/
#resumeMerit {
	width: 100%;
	padding: 200px 0 150px;
	margin: 0 auto;
	background: #e6ebf1;
	position: relative;
}
#resumeMerit::before {
	content: '';
	display: block;
	width: 100%;
	height: 100px;
	background: #fff;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	position: absolute;
	top: -1px;
	left: 0;
	z-index: 0;
}
#resumeMerit > header {
	width: 100%;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	z-index: 0;
}
#resumeMerit > header > h2 {
	text-align: center;
	font-size: 30px;
	line-height: 1.4em;
	padding: 0;
	margin: 0 auto;
	border: none;
	background: none;
	z-index: 0;
}
#resumeMerit > header > em {
	display: inline-block;
	padding: 0;
	margin: 0 auto;
	font-family: var(--font-en);
	font-style: normal;
	font-size: 70px;
	line-height: 1;
	color: var(--main);
	position: absolute;
	top: -0.5em;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: -1;
	opacity: 0.3;
}
/*リスト*/
#all_wrap .resumeMeritList {
	width: 90%;
	max-width: 1100px;
	padding: 0;
	margin: 0 auto;
	position: relative;
	list-style: none;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	flex-wrap: wrap;
	grid-row-gap: 100px;
	column-gap: 0;
}
#all_wrap .resumeMeritList > li {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	z-index: 0;
}
#all_wrap .resumeMeritList > li:nth-child(even) {
	justify-content: flex-start;
}
#all_wrap .resumeMeritList > li > .resumeMeritListInfo {
	width: 650px;
	padding: 40px;
	margin: 0;
	position: relative;
	background: #fff;
	filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.1));
}
#all_wrap .resumeMeritList > li > .resumeMeritListInfo > h3 {
	width: 100%;
	padding: 0;
	margin: 0 auto 15px;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 15px;
}
#all_wrap .resumeMeritList > li > .resumeMeritListInfo > h3 em {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-size: 60px;
	line-height: 1;
	font-style: normal;
	background: linear-gradient( to right, #284977 0, #3c88d3 100% );
	-webkit-background-clip: text;
	color: transparent;
}
#all_wrap .resumeMeritList > li > .resumeMeritListInfo > h3 span {
	display: block;
	padding: 0;
	margin: 5px 0 0;
	position: relative;
	font-size: 20px;
	line-height: 1.4em;
	color: var(--main);
}
#all_wrap .resumeMeritList > li > .resumeMeritListInfo > p {
	font-size: 15px;
	line-height: 2em;
	padding: 0;
	margin: 0;
	text-align: justify;
	text-justify: inter-ideograph;
}
#all_wrap .resumeMeritList > li > .resumeMeritListInfo > p strong {
	display: inline-block;
	padding: 5px 5px 5px 7px;
	margin: 0;
	margin-right: 10px;
	font-size: 15px;
	line-height: 1;
	color: #fff;
	background: var(--main);
}
#all_wrap .resumeMeritList > li > figure {
	width: calc(50% + 50px);
	height: 100%;
	padding: 0;
	margin: 0;
	text-align: center;
	overflow: hidden;
	position: absolute;
	top: 40px;
	left: 0;
	z-index: -1;
}
#all_wrap .resumeMeritList > li:nth-child(even) > figure {
	left: unset;
	right: 0;
}
#all_wrap .resumeMeritList > li > figure img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	object-fit: cover;
}
#all_wrap .resumeMeritList > li > figure.rev img {
	transform: translate(-50%,-50%) scaleX(-1);
	-webkit-transform: translate(-50%,-50%) scaleX(-1);
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*メリット*/
	#resumeMerit {
		width: 100%;
		padding: 100px 0 50px;
	}
	#resumeMerit::before {
		height: 50px;
	}
	#resumeMerit > header {
		margin: 0 auto 20px;
	}
	#resumeMerit > header > h2 {
		text-align: center;
		font-size: 20px;
	}
	#resumeMerit > header > em {
		font-size: 40px;
	}
	/*リスト*/
	#all_wrap .resumeMeritList {
		width: calc(100% - 60px);
		max-width: 100%;
		padding: 0;
		margin: 0 auto;
		grid-row-gap: 40px;
		column-gap: 0;
	}
	#all_wrap .resumeMeritList > li {
		width: 100%;
		justify-content: center;
		flex-wrap: wrap;
		z-index: 0;
	}
	#all_wrap .resumeMeritList > li:nth-child(even) {
		justify-content: flex-start;
	}
	#all_wrap .resumeMeritList > li > .resumeMeritListInfo {
		width: 100%;
		padding: 20px;
		margin: 0;
		position: relative;
		background: #fff;
		filter: unset;
	}
	#all_wrap .resumeMeritList > li > .resumeMeritListInfo > h3 {
		width: 100%;
		padding: 0;
		margin: 0 auto 15px;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		flex-wrap: nowrap;
		column-gap: 15px;
	}
	#all_wrap .resumeMeritList > li > .resumeMeritListInfo > h3 em {
		font-size: 50px;
		position: absolute;
		top: -50px;
		left: -40px;
	}
	#all_wrap .resumeMeritList > li > .resumeMeritListInfo > h3 span {
		font-size: 16px;
		line-height: 1.4em;
	}
	#all_wrap .resumeMeritList > li > .resumeMeritListInfo > p {
		font-size: 14px;
		line-height: 2em;
	}
	#all_wrap .resumeMeritList > li > .resumeMeritListInfo > p strong {
		font-size: 14px;
	}
	#all_wrap .resumeMeritList > li > figure {
		width: 100%;
		height: auto;
		padding: 0;
		margin: 0;
		text-align: center;
		overflow: hidden;
		position: relative;
		top: unset;
		left: unset;
		z-index: -1;
	}
	#all_wrap .resumeMeritList > li:nth-child(even) > figure {
		left: unset;
		right: unset;
	}
	#all_wrap .resumeMeritList > li > figure::before {
		content: '';
		display: block;
		padding-top: 56.25%;
	}
	#all_wrap .resumeMeritList > li > figure img {
		width: 100%;
		height: 100%;
		padding: 0;
		margin: 0;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		-webkit-transform: translate(-50%,-50%);
		object-fit: cover;
	}
}

/*お客様の声*/
#resumeVoice {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	position: relative;
	background: #fff;
}
#resumeVoice > header {
	width: 100%;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	z-index: 0;
}
#resumeVoice > header > h2 {
	text-align: center;
	font-size: 30px;
	line-height: 1.4em;
	padding: 0;
	margin: 0 auto;
	border: none;
	background: none;
	z-index: 0;
}
#resumeVoice > header > em {
	display: inline-block;
	padding: 0;
	margin: 0 auto;
	font-family: var(--font-en);
	font-style: normal;
	font-size: 70px;
	line-height: 1;
	color: var(--main);
	position: absolute;
	top: -0.5em;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: -1;
	opacity: 0.3;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*お客様の声*/
	#resumeVoice {
		width: 100%;
		padding: 50px 0;
	}
	#resumeVoice > header {
		margin: 0 auto 10px;
	}
	#resumeVoice > header > h2 {
		text-align: center;
		font-size: 20px;
	}
	#resumeVoice > header > em {
		font-size: 40px;
	}
}

/*スライダー*/
#all_wrap #resumeVoice > .slider .slick-track {
	display: flex;
}
#all_wrap #resumeVoice > .slider .slick-slide {
	height: auto !important;
}
#all_wrap #resumeVoice > .slider .slick-slide {
	width: 600px;
	padding: 50px 40px 40px;
	margin: 0 25px;
	border: 1px solid var(--sub);
	position: relative;
	background-color: #fff;
	border-radius: 5px;
	transform: scale(1);
	transform-origin: center;
	transition: var(--ease);
	display: flex;
	display: -webkit-flex;
	flex-direction: column;
	filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.1));
	outline: none;
}
#all_wrap #resumeVoice > .slider .slick-slide.slick-active {
	transform: scale(1);
	transform-origin: center;
	transition: var(--ease);
}
#all_wrap #resumeVoice > .slider .slick-slide::before {
	content: '';
	display: block;
	width: 100px;
	height: 100px;
	padding: 0;
	margin: 0;
	background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/10/icon_quot.svg');
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: top left;
	position: absolute;
	top: 20px;
	left: 20px;
	opacity: 0.3;
}
#all_wrap #resumeVoice > .slider .slick-slide h3 {
	width: 100%;
	padding: 0;
	margin: 0 auto 15px;
	font-size: 25px;
	line-height: 1.4em;
	border: none;
	background: none;
	position: relative;
	text-align: left;
}
#all_wrap #resumeVoice > .slider .slick-slide h3 a {
	font-size: 25px;
	line-height: 1.4em;
	transition: var(--ease);
}
#all_wrap #resumeVoice > .slider .slick-slide h3 a:hover {
	color: var(--sub);
	transition: var(--ease);
}
#all_wrap #resumeVoice > .slider .slick-slide .resumeVoice_txt {
	width: 100%;
	padding: 0;
	margin: 0 auto 10px;
	text-align: justify;
	text-justify: inter-ideograph;
}
#all_wrap #resumeVoice > .slider .slick-slide .poster {
	width: 100%;
	padding: 0;
	margin: auto auto 0;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 20px;
}
#all_wrap #resumeVoice > .slider .slick-slide .poster > h4 {
	text-align: right;
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	position: relative;
}
#all_wrap #resumeVoice > .slider .slick-slide .poster > h4 span {
	display: block;
	padding: 0;
	margin: 0;
	font-size: 14px;
	line-height: 1.4em;
}
#all_wrap #resumeVoice > .slider .slick-slide .poster > figure {
	width: 80px;
	padding: 0;
	margin: 0;
	position: relative;
	text-align: center;
	overflow: hidden;
	border-radius: 50%;
}
#all_wrap #resumeVoice > .slider .slick-slide .poster > figure::before {
	content: '';
	display: block;
	padding: 50%;
}
#all_wrap #resumeVoice > .slider .slick-slide .poster > figure img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	object-fit: cover;
}

/*slick*/
#all_wrap #resumeVoice .slider li::before,
#all_wrap #resumeVoice .slider li::after {
	display: none;
}

/*Nextボタン*/
#all_wrap #resumeVoice .slider .slick-next {
	width: 40px;
	height: 40px;
	padding: 0;
	margin: 0;
	border-radius: 50%;
	background: var(--sub);
	border: none;
	position: absolute;
	top: 50%;
	left: calc(50% + 305px);
	border-radius: 50%;
	border: 1px solid var(--sub);
	transform: translate(0,-50%);
	-webkit-transform: translate(0,-50%);
	display: block;
	cursor: pointer;
	text-indent: -9999px;
	transition: all 0.3s ease;
	z-index: 20;
	outline: none;
	opacity: 0.5;
}
#all_wrap #resumeVoice .slider .slick-next::after {
	content: '';
	display: block;
	width: 12px;
	height: 12px;
	padding: 0;
	margin: 0;
	background: none;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	position: absolute;
	top: 50%;
	left: 45%;
	transform: translate(-50%,-50%) rotate(45deg);
	-webkit-transform: translate(-50%,-50%) rotate(45deg);
}
#all_wrap #resumeVoice .slider .slick-next:hover {
	opacity: 1;
	transition: all 0.3s ease;
}

/*Prevボタン*/
#all_wrap #resumeVoice .slider .slick-prev {
	width: 40px;
	height: 40px;
	padding: 0;
	margin: 0;
	border-radius: 50%;
	background: var(--sub);
	border: none;
	position: absolute;
	top: 50%;
	right: calc(50% + 305px);
	left: unset;
	border-radius: 50%;
	border: none;
	transform: translate(0,-50%);
	-webkit-transform: translate(0,-50%);
	display: block;
	cursor: pointer;
	text-indent: -9999px;
	transition: all 0.3s ease;
	z-index: 20;
	outline: none;
	opacity: 0.5;
}
#all_wrap #resumeVoice .slider .slick-prev::after {
	content: '';
	display: block;
	width: 12px;
	height: 12px;
	padding: 0;
	margin: 0;
	background: none;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
	position: absolute;
	top: 50%;
	left: 55%;
	transform: translate(-50%,-50%) rotate(-45deg);
	-webkit-transform: translate(-50%,-50%) rotate(-45deg);
}
#all_wrap #resumeVoice .slider .slick-prev:hover {
	opacity: 1;
	transition: all 0.3s ease;
}

/*ドットナビゲーションの設定*/
#all_wrap #resumeVoice .slider .slick-dots {
	width: 100%;
	max-width: 1000px;
	padding: 0;
	margin: 0 auto;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	position: absolute;
	bottom: -40px;
	left: 50%;
	column-gap: 10px;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: 5;
}
#all_wrap #resumeVoice .slider .slick-dots li {
	display:inline-block;
	width: 15px;
	margin: 0;
	padding: 0;
}
#all_wrap #resumeVoice .slider .slick-dots button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--sub);
	border: none;
	text-indent: -9999px;
	opacity: 0.5;
	transition: all 0.3s ease;
}
#all_wrap #resumeVoice .slider .slick-dots .slick-active button {
	background: var(--sub);
	opacity: 1;
	transition: all 0.3s ease;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*スライダー*/
	#all_wrap #resumeVoice > .slider .slick-slide {
		width: 100%;
		padding: 20px;
		margin: 0 5px !important;
		border: 1px solid var(--sub);
		position: relative;
		background-color: #fff;
		border-radius: 5px;
		transform: scale(1);
		transform-origin: center;
		transition: var(--ease);
		display: flex;
		display: -webkit-flex;
		flex-direction: column;
		filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.1));
		outline: none;
	}
	#all_wrap #resumeVoice > .slider .slick-slide.slick-active {
		transform: scale(1);
		transform-origin: center;
		transition: var(--ease);
	}
	#all_wrap #resumeVoice > .slider .slick-slide::before {
		content: '';
		display: block;
		width: 50px;
		height: 50px;
		padding: 0;
		margin: 0;
		background-image: url('https://presence-m.com/wp/wp-content/uploads/2023/10/icon_quot.svg');
		background-repeat: no-repeat;
		background-size: 100%;
		background-position: top left;
		position: absolute;
		top: 10px;
		left: 10px;
		opacity: 0.1;
	}
	#all_wrap #resumeVoice > .slider .slick-slide h3 {
		width: 100%;
		padding: 0;
		margin: 0 auto 10px;
		font-size: 18px;
		line-height: 1.4em;
		border: none;
		background: none;
		position: relative;
		text-align: left;
	}
	#all_wrap #resumeVoice > .slider .slick-slide h3 a {
		font-size: 18px;
		line-height: 1.4em;
		transition: var(--ease);
	}
	#all_wrap #resumeVoice > .slider .slick-slide h3 a:hover {
		color: var(--sub);
		transition: var(--ease);
	}
	#all_wrap #resumeVoice > .slider .slick-slide .resumeVoice_txt {
		width: 100%;
		padding: 0;
		margin: 0 auto 10px;
		text-align: justify;
		text-justify: inter-ideograph;
		font-size: 14px;
	}
	#all_wrap #resumeVoice > .slider .slick-slide .poster {
		width: 100%;
		padding: 0;
		margin: auto auto 0;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: flex-end;
		align-content: center;
		align-items: center;
		flex-wrap: nowrap;
		column-gap: 20px;
	}
	#all_wrap #resumeVoice > .slider .slick-slide .poster > h4 {
		text-align: right;
		padding: 0;
		margin: 0;
		border: none;
		background: none;
		position: relative;
	}
	#all_wrap #resumeVoice > .slider .slick-slide .poster > h4 span {
		display: block;
		padding: 0;
		margin: 0;
		font-size: 14px;
		line-height: 1.4em;
	}
	#all_wrap #resumeVoice > .slider .slick-slide .poster > figure {
		width: 50px;
		padding: 0;
		margin: 0;
		position: relative;
		text-align: center;
		overflow: hidden;
		border-radius: 50%;
	}
	#all_wrap #resumeVoice > .slider .slick-slide .poster > figure::before {
		content: '';
		display: block;
		padding: 50%;
	}
	#all_wrap #resumeVoice > .slider .slick-slide .poster > figure img {
		width: 100%;
		height: 100%;
		padding: 0;
		margin: 0;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		-webkit-transform: translate(-50%,-50%);
		object-fit: cover;
	}
	
	/*リスト*/
	#all_wrap #resumeVoice .slider {
		width: 100%;
		padding: 0;
		margin: 0;
		list-style: none;
		display: block;
		opacity: 1;
		position: relative;
		z-index: 10;
		visibility: visible;
		transition: 0.2s;
	}
	#all_wrap #resumeVoice .slider.slick-initialized {
		visibility: visible;
		opacity: 1;
		transition: 0.2s;
	}


	/*Nextボタン*/
	#all_wrap #resumeVoice .slider .slick-next {
		right: 5px;
		left: unset;
	}
	/*Prevボタン*/
	#all_wrap #resumeVoice .slider .slick-prev {
		left: 5px;
		right: unset;
	}
	/*ドットナビゲーションの設定*/
	#all_wrap #resumeVoice .slider .slick-dots {
		width: 100%;
		max-width: 100%;
		padding: 0;
		margin: 0 auto;
		display: flex;
		display: -webkit-flex;
		justify-content: center;
		align-content: center;
		align-items: center;
		flex-wrap: nowrap;
		position: absolute;
		column-gap: 5px;
		bottom: -20px;
		left: 50%;
		transform: translate(-50%,0);
		-webkit-transform: translate(-50%,0);
		z-index: 5;
	}
	#all_wrap #resumeVoice .slider .slick-dots li {
		display:inline-block;
		margin: 0;
	}
	#all_wrap #resumeVoice .slider .slick-dots button {
		background-color: transparent;
		border: none;
		cursor: pointer;
		outline: none;
		padding: 0;
		appearance: none;
		display: block;
		width: 8px;
		height: 8px;
		border-radius: 50%;
		background: var(--main);
		border: none;
		text-indent: -9999px;
		opacity: 0.5;
		transition: all 0.3s ease;
	}
	#all_wrap #resumeVoice .slider .slick-dots .slick-active button {
		background: var(--main);
		opacity: 1;
		transition: all 0.3s ease;
	}
}


/*流れ*/
#resumeFlow {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
	position: relative;
	background: #e6ebf1;
}
#resumeFlow > header {
	width: 100%;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	z-index: 0;
}
#resumeFlow > header > h2 {
	text-align: center;
	font-size: 30px;
	line-height: 1.4em;
	padding: 0;
	margin: 0 auto;
	border: none;
	background: none;
	z-index: 0;
}
#resumeFlow > header > em {
	display: inline-block;
	padding: 0;
	margin: 0 auto;
	font-family: var(--font-en);
	font-style: normal;
	font-size: 70px;
	line-height: 1;
	color: var(--main);
	position: absolute;
	top: -0.5em;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: -1;
	opacity: 0.3;
}
/*リスト*/
#all_wrap .resumeFlowList {
	width: 90%;
	max-width: 900px;
	padding: 0;
	margin: 0 auto;
	list-style: none;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	flex-wrap: wrap;
	grid-row-gap: 50px;
}
#all_wrap .resumeFlowList > li {
	width: 100%;
	padding: 20px;
	margin: 0 auto;
	position: relative;
	background: #fff;
	border-radius: 10px;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.05));
}
#all_wrap .resumeFlowList > li::after {
	content: '';
	display: block;
	width: 50px;
	height: 15px;
	padding: 0;
	margin: 0;
	background: var(--main);
	position: absolute;
	bottom: -30px;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	opacity: 0.5;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
}
#all_wrap .resumeFlowList > li:last-child {
	margin-bottom: 0;
}
#all_wrap .resumeFlowList > li:last-child::after {
	display: none;
}
#all_wrap .resumeFlowList > li figure {
	width: 300px;
	padding: 0;
	margin: 0;
	position: relative;
	text-align: center;
	overflow: hidden;
	border-radius: 10px;
}
#all_wrap .resumeFlowList > li figure::before {
	content: '';
	display: block;
	padding-top: 56.25%;
}
#all_wrap .resumeFlowList > li figure img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	object-fit: cover;
}
#all_wrap .resumeFlowList > li .resumeFlowListInfo {
	width: calc(100% - 320px);
	padding: 0;
	margin: 0;
	position: relative;
	order: 1;
}
#all_wrap .resumeFlowList > li .resumeFlowListInfo h3 {
	padding: 0 0 0 95px;
	margin: 0 auto 10px;
	position: relative;
	font-size: 20px;
	line-height: 1.4em;
	color: var(--main);
	border: none;
	background: none;
}
#all_wrap .resumeFlowList > li .resumeFlowListInfo h3 em {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-size: 70px;
	line-height: 1;
	font-style: normal;
	background: linear-gradient( to right, #284977 0, #3c88d3 100% );
	-webkit-background-clip: text;
	color: transparent;
	position: absolute;
	bottom: 0;
	left: 0;
}
#all_wrap .resumeFlowList > li .resumeFlowListInfo p {
	padding: 0;
	margin: 0 auto;
	text-align: justify;
	text-justify: inter-ideograph;
}
#all_wrap .resumeFlowList > li .resumeFlowListInfo p small {
	display: block;
	margin-top: 10px;
	font-size: 12px;
	line-height: 1.4em;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*流れ*/
	#resumeFlow {
		width: 100%;
		padding: 50px 0 30px;
	}
	#resumeFlow > header {
		width: 100%;
		margin: 0 auto 20px;
	}
	#resumeFlow > header > h2 {
		text-align: center;
		font-size: 20px;
	}
	#resumeFlow > header > em {
		font-size: 30px;
	}
	/*リスト*/
	#all_wrap .resumeFlowList {
		width: calc(100% - 60px);
		max-width: 100%;
		padding: 0;
		margin: 0 auto;
		list-style: none;
		position: relative;
		display: flex;
		display: -webkit-flex;
		justify-content: center;
		flex-wrap: wrap;
		grid-row-gap: 0;
		grid-row-gap: 30px;
	}
	#all_wrap .resumeFlowList > li {
		width: 100%;
		padding: 20px;
		border-radius: 10px;
	}
	#all_wrap .resumeFlowList > li::after {
		bottom: -25px;
	}
	#all_wrap .resumeFlowList > li figure {
		width: 100%;
		padding: 0;
		margin: 0 auto 10px;
	}
	#all_wrap .resumeFlowList > li .resumeFlowListInfo {
		width: calc(100%);
		padding: 0;
		margin: 0 auto;
		position: relative;
		order: 1;
	}
	#all_wrap .resumeFlowList > li .resumeFlowListInfo h3 {
		padding: 0 0 0 70px;
		margin: 0 auto 10px;
		position: relative;
		font-size: 18px;
		line-height: 1.4em;
		color: var(--main);
		border: none;
		background: none;
	}
	#all_wrap .resumeFlowList > li .resumeFlowListInfo h3 em {
		display: inline-block;
		padding: 0;
		margin: 0;
		font-size: 50px;
		line-height: 1;
		font-style: normal;
		background: linear-gradient( to right, #284977 0, #3c88d3 100% );
		-webkit-background-clip: text;
		color: transparent;
		position: absolute;
		bottom: 0;
		left: 0;
	}
	#all_wrap .resumeFlowList > li .resumeFlowListInfo p {
		padding: 0;
		margin: 0 auto;
		text-align: justify;
		text-justify: inter-ideograph;
	}
	#all_wrap .resumeFlowList > li .resumeFlowListInfo p small {
		display: block;
		margin-top: 10px;
		font-size: 12px;
		line-height: 1.4em;
	}
}


/*よくある質問*/
#resumeFaq {
	width: 100%;
	padding: 100px 0 50px;
	margin: 0 auto;
	position: relative;
	background: #fff;
}
#resumeFaq > header {
	width: 100%;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	z-index: 0;
}
#resumeFaq > header > h2 {
	text-align: center;
	font-size: 30px;
	line-height: 1.4em;
	padding: 0;
	margin: 0 auto;
	border: none;
	background: none;
	z-index: 0;
}
#resumeFaq > header > em {
	display: inline-block;
	padding: 0;
	margin: 0 auto;
	font-family: var(--font-en);
	font-style: normal;
	font-size: 70px;
	line-height: 1;
	color: var(--main);
	position: absolute;
	top: -0.5em;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: -1;
	opacity: 0.3;
}
/*リスト*/
#all_wrap .faqList {
	width: 100%;
	max-width: 900px;
	padding: 20px;
	margin: 0 auto 10px;
	background: #f9f9f9;
	border: none;
}
#all_wrap .faqList dt {
	padding: 0;
	background: none;
	position: relative;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4em;
	cursor: pointer;
	display: -webkit-flex;
	display: flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 20px;
}
#all_wrap .faqList dt::before {
	content: 'Q';
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	width: 40px;
	min-width: 40px;
	height: 40px;
	padding: 0;
	margin: 0;
	font-size: 20px;
	color: #fff;
	font-family: var(--font-en);
	font-style: normal;
	font-feature-settings: "palt";
	background: var(--main);
	position: relative;
	top: unset;
	left: unset;
}
#all_wrap .faqList dd {
	display: -webkit-flex;
	display: flex;
	justify-content: flex-start;
	align-content: flex-start;
	align-items: flex-start;
	flex-wrap: nowrap;
	column-gap: 20px;
	padding: 0;
	margin-top: 20px;
	padding-top: 20px;
	background: #fafafa;
	font-size: 15px;
	line-height: 2;
	font-weight: 400;
	font-style: normal;
	font-feature-settings: "palt";
	position: relative;
	border-top: 1px solid #fff;
}
#all_wrap .faqList dd::before {
	content: 'A';
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	width: 40px;
	min-width: 40px;
	height: 40px;
	padding: 0;
	margin: 0;
	font-size: 20px;
	color: #fff;
	font-family: var(--font-en);
	font-style: normal;
	font-feature-settings: "palt";
	background: #54b6d4;
	position: relative;
	top: unset;
	left: unset;
}
#all_wrap .faqList dd p {
	font-size: 15px;
	padding: 0;
	margin: 0;
	margin-bottom: 10px;
}
#all_wrap .faqList dd p:last-of-type {
	margin-bottom: 0;
}
#all_wrap .faqList dt span::before,
#all_wrap .faqList dt span::after {
	content: '';
	display: block;
	width: 10px;
	height: 1px;
	border-radius: 5px;
	background: #000;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}
#all_wrap .faqList dt span::after {
	background: #000;
	transform: translateY(-50%) rotate(90deg);
	transition: 0.5s;
}
#all_wrap .faqList dt .active::after {
	transform: rotate(0);
	transition: 0.5s;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*よくある質問*/
	#resumeFaq {
		width: 100%;
		padding: 50px 0 0;
	}
	#resumeFaq > header {
		margin: 0 auto 20px;
	}
	#resumeFaq > header > h2 {
		text-align: center;
		font-size: 20px;
	}
	#resumeFaq > header > em {
		font-size: 30px;
	}
	/*リスト*/
	#all_wrap .faqList {
		width: calc(100% - 60px);
		max-width: 100%;
		padding: 10px;
		margin: 0 auto 10px;
		background: #f9f9f9;
		border: none;
	}
	#all_wrap .inner .faqList {
		width: calc(100%);
		max-width: 100%;
		padding: 10px;
		margin: 0 auto 10px;
		background: #f9f9f9;
		border: none;
	}
	#all_wrap .faqList dt {
		padding: 0 20px 0 0;
		background: none;
		position: relative;
		font-size: 14px;
		cursor: pointer;
		display: -webkit-flex;
		display: flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		flex-wrap: nowrap;
		column-gap: 10px;
	}
	#all_wrap .faqList dt::before {
		content: 'Q';
		display: flex;
		display: -webkit-flex;
		justify-content: center;
		align-content: center;
		align-items: center;
		flex-wrap: nowrap;
		width: 30px;
		min-width: 30px;
		height: 30px;
		padding: 0;
		margin: 0;
		font-size: 14px;
		color: #fff;
		font-family: var(--font-en);
		font-style: normal;
		font-feature-settings: "palt";
		background: var(--main);
		position: relative;
		top: unset;
		left: unset;
	}
	#all_wrap .faqList dd {
		display: -webkit-flex;
		display: flex;
		justify-content: flex-start;
		align-content: flex-start;
		align-items: flex-start;
		flex-wrap: nowrap;
		column-gap: 10px;
		padding: 0;
		margin-top: 10px;
		padding-top: 10px;
		background: #fafafa;
		font-size: 14px;
		line-height: 2;
		font-weight: 400;
		font-style: normal;
		font-feature-settings: "palt";
		position: relative;
		border-top: 1px solid #fff;
	}
	#all_wrap .faqList dd::before {
		content: 'A';
		display: flex;
		display: -webkit-flex;
		justify-content: center;
		align-content: center;
		align-items: center;
		flex-wrap: nowrap;
		width: 30px;
		min-width: 30px;
		height: 30px;
		padding: 0;
		margin: 0;
		font-size: 14px;
		color: #fff;
		font-family: var(--font-en);
		font-style: normal;
		font-feature-settings: "palt";
		background: #54b6d4;
		position: relative;
		top: unset;
		left: unset;
	}
	#all_wrap .faqList dd p {
		font-size: 14px;
		padding: 0;
		margin: 0;
		margin-bottom: 10px;
	}
	#all_wrap .faqList dt span::before,
	#all_wrap .faqList dt span::after {
		content: '';
		display: block;
		width: 10px;
		height: 1px;
		border-radius: 5px;
		background: #000;
		position: absolute;
		right: 10px;
		top: 50%;
		transform: translateY(-50%);
	}
	#all_wrap .faqList dt span::after {
		background: #000;
		transform: translateY(-50%) rotate(90deg);
		transition: 0.5s;
	}
	#all_wrap .faqList dt .active::after {
		transform: rotate(0);
		transition: 0.5s;
	}
}

/*お問い合わせ*/
#resumeContact {
	width: 100%;
	padding: 200px 0 100px;
	margin: 0 auto;
	position: relative;
	background: #e6ebf1;
}
#resumeContact::before {
	content: '';
	display: block;
	width: 100%;
	height: 100px;
	background: #fff;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	position: absolute;
	top: -1px;
	left: 0;
	z-index: 0;
}
#resumeContact > header {
	width: 100%;
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
	z-index: 0;
}
#resumeContact > header > h2 {
	text-align: center;
	font-size: 30px;
	line-height: 1.4em;
	padding: 0;
	margin: 0 auto;
	border: none;
	background: none;
	z-index: 0;
}
#resumeContact > header > em {
	display: inline-block;
	padding: 0;
	margin: 0 auto;
	font-family: var(--font-en);
	font-style: normal;
	font-size: 70px;
	line-height: 1;
	color: var(--main);
	position: absolute;
	top: -0.5em;
	left: 50%;
	transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	z-index: -1;
	opacity: 0.3;
}

.itemspanWrap {
	width: 100%;
	padding: 0;
	margin: 0;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 10px;
}
.itemspan {
	display: block;
	margin-bottom: 0;
}
.itemspan:last-of-type {
	margin-bottom: 0;
}
.itemspanWrap > .itemspan {
	display: block;
	width: calc(50% - 5px);
	margin: 0;
}
.itemspanWrap > .itemspan input {
	width: 100%;
}
#resumeContact input {
	width: 100%;
}
#resumeContact #zip,
#resumeContact #zip1 {
	width: 25%;
	padding: 10px;
	margin: 0 0 5px;
	border-radius: 3px;
	background: #fff;
	border: 1px solid #ddd;
	outline: none;
}
#resumeContact .mwform-tel-field input {
	width: 25%;
	padding: 10px;
	margin: 0 0 10px;
	border-radius: 3px;
	background: #fff;
	border: 1px solid #ddd;
	outline: none;
}
#resumeContact .mwform-radio-field.horizontal-item {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	padding: 0;
	margin: 0 auto 10px;
	position: relative;
}
#resumeContact .mwform-radio-field.horizontal-item:last-of-type {
	margin-bottom: 0;
}
#resumeContact .mwform-radio-field.horizontal-item input {
	width: auto;
}
#resumeContact .contactBtn input {
	width: auto;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	/*お問い合わせ*/
	#resumeContact {
		width: 100%;
		padding: 100px 0 30px;
		margin: 0 auto;
		position: relative;
		background: #e6ebf1;
	}
	#resumeContact::before {
		content: '';
		display: block;
		width: 100%;
		height: 50px;
		background: #fff;
		clip-path: polygon(0 0, 50% 100%, 100% 0);
		position: absolute;
		top: -1px;
		left: 0;
		z-index: 0;
	}
	#resumeContact > header {
		margin: 0 auto 20px;
	}
	#resumeContact > header > h2 {
		text-align: center;
		font-size: 20px;
	}
	#resumeContact > header > em {
		font-size: 30px;
	}

	#resumeContact #formarea {
		width: calc(100% - 60px);
		margin: 0 auto;
	}
	.itemspanWrap {
		width: 100%;
		padding: 0;
		margin: 0;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 10px;
	}
	.itemspan {
		display: block;
		margin-bottom: 0;
	}
	.itemspan:last-of-type {
		margin-bottom: 0;
	}
	.itemspanWrap > .itemspan {
		display: block;
		width: 100%;
		margin: 0;
	}
	.itemspanWrap > .itemspan input {
		width: 100%;
	}
	#resumeContact input {
		width: 100%;
	}
	#resumeContact #zip,
	#resumeContact #zip1 {
		width: 25%;
		padding: 10px;
		margin: 0 0 5px;
		border-radius: 3px;
		background: #fff;
		border: 1px solid #ddd;
		outline: none;
	}
	#resumeContact .mwform-tel-field input {
		width: 25% !important;
		padding: 10px;
		margin: 0 0 10px;
		border-radius: 3px;
		background: #fff;
		border: 1px solid #ddd;
		outline: none;
	}
	#resumeContact .mwform-radio-field.horizontal-item {
		display: flex;
		display: -webkit-flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		padding: 0;
		margin: 0 auto 10px;
		position: relative;
	}
	#resumeContact .mwform-radio-field.horizontal-item:last-of-type {
		margin-bottom: 0;
	}
	#resumeContact .mwform-radio-field.horizontal-item input {
		width: auto;
	}
	#resumeContact .mwform-radio-field.horizontal-item label {
		display: flex;
		display: -webkit-flex;
		justify-content: flex-start;
		align-content: flex-start;
		align-items: flex-start;
		flex-wrap: nowrap;
	}
	#resumeContact .contactBtn input {
		width: auto;
	}
}

/************************************************************/
/*　履歴
/************************************************************/
#all_wrap .pageContents .content .outline_list {
	width: 100%;
	max-width: 900px;
	padding: 0;
	margin: 0 auto 50px;
	background: #eee;
	position: relative;
	list-style: none;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	grid-row-gap: 0;
}
#all_wrap .pageContents .content .outline_list > li {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	flex-wrap: nowrap;
	column-gap: 0;
	padding: 0;
	margin: 0;
	background: #fff;
	border-bottom: 1px solid #ddd;
}
#all_wrap .pageContents .content .outline_list > li::before,
#all_wrap .pageContents .content .outline_list > li::after {
	display: none;
}
#all_wrap .pageContents .content .outline_list > li span {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	width: 80px;
	min-width: 80px;
	max-width: 80px;
	padding: 10px 10px;
	margin: 0;
	background: #fff;
	font-size: 12px;
	line-height: 1;
	font-weight: 400;
	color: var(--text);
	text-align: center;
}
#all_wrap .pageContents .content .outline_list > li p {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	padding: 10px;
	margin: 0;
	text-align: left;
	font-size: 14px;
	line-height: 1.4em;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#all_wrap .pageContents .content .outline_list {
		width: 100%;
		max-width: 100%;
		padding: 5px;
		margin: 0 auto 30px;
		background: none;
		position: relative;
		list-style: none;
		display: flex;
		display: -webkit-flex;
		justify-content: center;
		align-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
		grid-row-gap: 0;
	}
	#all_wrap .pageContents .content .outline_list > li {
		display: flex;
		display: -webkit-flex;
		justify-content: flex-start;
		flex-wrap: nowrap;
		column-gap: 0;
		padding: 0;
		margin: 0;
		background: #fff;
	}
	#all_wrap .pageContents .content .outline_list > li::before,
	#all_wrap .pageContents .content .outline_list > li::after {
		display: none;
	}
	#all_wrap .pageContents .content .outline_list > li span {
		display: flex;
		display: -webkit-flex;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
		width: 80px;
		min-width: 80px;
		max-width: 80px;
		padding: 10px 10px;
		margin: 0;
		background: #fff;
		font-size: 12px;
		line-height: 1;
		font-weight: 400;
		color: var(--text);
		text-align: center;
	}
	#all_wrap .pageContents .content .outline_list > li p {
		display: flex;
		display: -webkit-flex;
		justify-content: flex-start;
		align-items: center;
		flex-wrap: wrap;
		padding: 10px 10px 10px 0;
		margin: 0;
		text-align: left;
		font-size: 12px;
		line-height: 1.4em;
	}
}


/************************************************************/
/*　履歴
/************************************************************/
#page-2024-revision {
	overflow: visible;
}
#revision {
	width: calc(100%);
	padding: 0;
	margin: 0 auto;
}
#revision .revisionWrap {
	width: calc(100% - 160px);
	padding: 0;
	margin: 0 auto;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: stretch;
	align-items: stretch;
	flex-wrap: wrap;
	column-gap: 50px;
	overflow: visible;
}
#revision .revision_left {
	width: 65%;
	height: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	column-gap: 50px;
	position: sticky;
}
#revision .revision_right {
	width: calc(35% - 50px);
	height: 100%;
	padding: 0;
	margin: 0;
	position: relative;
}
#all_wrap .content #revision .revision_info {
	width: calc(60% - 50px);
	padding: 0;
	margin: 0;
	position: relative;
}
#all_wrap .content #revision .revision_left .revision_center {
	width: 40%;
	padding: 0;
	margin: 0;
	position: relative;
}
#all_wrap .content #revision .revision_left figure {
	width: 100%;
	padding: 0;
	margin: 0;
}
#all_wrap .content #revision .revision_left figure img {
	width: 100%;
	height: auto;
}
#all_wrap .content #revision .revision_info h2 {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0 auto 20px;
	font-size: 35px;
	line-height: 1.4em;
	font-feature-settings: "palt" 1;
	font-style: normal;
	border: none;
	position: relative;
	z-index: 0;
}
#all_wrap .content #revision .revision_info h2::before,
#all_wrap .content #revision .revision_info h2::after {
	display: none;
}
#all_wrap .content #revision .revision_info p {
	padding: 0;
	margin: 0 auto 40px;
	text-align: justify;
	word-break: break-all;
	text-justify: inter-ideograph;
}
#all_wrap .content #revision .revision_info .btn {
	text-align: left;
	padding: 0;
	margin: 0;
}
#all_wrap .content #revision .revision_info .btn a {
	display: inline-block;
	padding: 15px 30px;
	margin: 0;
	background: var(--main);
	border-radius: 50px;
	font-size: 14px;
	line-height: 1;
	font-weight: 500;
	color: #fff;
	text-decoration: none;
	transition: var(--ease);
	white-space: nowrap;
}
#all_wrap .content #revision .revision_info .btn a:hover {
	opacity: 0.8;
	transition: var(--ease);
}

/*半画面フォーム*/
#all_wrap .pageContents .content #revision .revision_right h2 {
	padding: 0;
	margin: 0 auto 15px;
	border: none;
	background: none;
	font-size: 20px;
	line-height: 1;
	font-weight: bold;
	text-align: center;
	color: var(--main);
}
#all_wrap .pageContents .content #revision .revision_right h2::before,
#all_wrap .pageContents .content #revision .revision_right h2::after {
	display: none;
}
#all_wrap .harf #formarea {
	width: 100%;
	padding: 30px;
	margin: 0;
	background: #fafafa;
	border-radius: 10px;
	position: relative;
}
#all_wrap .harf table.contactform {
	margin-bottom: 0;
}
#all_wrap .harf table.contactform th {
	display: block;
	font-style: normal;
	font-feature-settings: "palt";
	border: none;
	border-bottom: none;
	text-align: left;
	vertical-align: middle;
	font-family: var(--font-jp);
	font-size: 14px;
	line-height: 1;
	font-weight: bold;
	background: var(--main);
	color: #fff;
	width: 100%;
	padding: 10px;
	margin: 0;
	border-bottom: none;
	position: relative;
}
#all_wrap table.contactform th > span {
	right: 10px;
}
#all_wrap .harf table.contactform td {
	display: block;
	border: none;
	background: none;
	vertical-align: inherit;
	border-bottom: none;
	width: 100%;
	padding: 10px 0 20px;
	margin: 0;
	font-size: 14px;
	font-weight: 300;
	border-bottom: none;
}
#all_wrap .harf table.contactform td input[type="text"],
#all_wrap .harf table.contactform td input[type="email"] {
	width: 100%;
	padding: 10px;
	margin: 0;
	border-radius: 3px;
	background: #fff;
	border: 1px solid #ddd;
	outline: none;
	max-width: 100%;
}
#all_wrap .harf table.contactform td textarea {
	width: 100%;
	height: 340px;
	padding: 10px;
	margin: 0;
	border-radius: 3px;
	background: #fff;
	border: 1px solid #ddd;
	outline: none;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#page-2024-revision {
		overflow: hidden;
	}
	#revision {
		width: calc(100%);
		padding: 0 30px;
		margin: 0 auto;
	}
	#revision .revisionWrap {
		width: calc(100%);
		padding: 0;
		margin: 0 auto;
		column-gap: 30px;
	}
	#revision .revision_left {
		width: 100%;
		column-gap: 20px;
		margin-bottom: 50px;
		position: relative;
		top: unset;
	}
	#revision .revision_right {
		width: 100%;
		padding: 0;
		margin: 0;
		position: relative;
	}
	#all_wrap .content #revision .revision_info {
		width: 100%;
		padding: 0;
		margin: 0 auto 30px;
		position: relative;
	}
	#all_wrap .content #revision .revision_left .revision_center {
		width: 100%;
		padding: 0;
		margin: 0;
		position: relative;
	}
	#all_wrap .content #revision .revision_left .revision_center h2 {
		margin-top: 0;
	}
	#all_wrap .content #revision .revision_left figure {
		width: 100%;
		padding: 0;
		margin: 0 auto 15px;
		position: relative;
		overflow: hidden;
		text-align: center;
	}
	#all_wrap .content #revision .revision_left figure::before {
		content: '';
		display: block;
		padding-top: 56.25%;
	}
	#all_wrap .content #revision .revision_left figure img {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		-webkit-transform: translate(-50%,-50%);
		object-fit: cover;
	}
	#all_wrap .content #revision .revision_info h2 {
		display: block;
		width: 100%;
		padding: 0;
		margin: 0 auto 10px;
		font-size: 20px;
		line-height: 1.4em;
		font-feature-settings: "palt" 1;
		font-style: normal;
		border: none;
		position: relative;
		z-index: 0;
	}
	#all_wrap .content #revision .revision_info h2::before,
	#all_wrap .content #revision .revision_info h2::after {
		display: none;
	}
	#all_wrap .content #revision .revision_info p {
		padding: 0;
		margin: 0 auto 20px;
		text-align: justify;
		word-break: break-all;
		text-justify: inter-ideograph;
	}
	#all_wrap .content #revision .revision_info .btn {
		text-align: center;
		padding: 0;
		margin: 0;
	}
	#all_wrap .content #revision .revision_info .btn a {
		display: block;
		width: 100%;
		padding: 15px 20px;
		margin: 0;
		background: var(--main);
		border-radius: 50px;
		font-size: 12px;
		line-height: 1;
		font-weight: 500;
		color: #fff;
		text-decoration: none;
		transition: var(--ease);
		white-space: nowrap;
		text-align: center;
	}

	/*半画面フォーム*/
	#all_wrap .pageContents .content #revision .revision_right h2 {
		padding: 0;
		margin: 0 auto 15px;
		border: none;
		background: none;
		font-size: 20px;
		line-height: 1;
		font-weight: bold;
		text-align: center;
		color: var(--main);
	}
	#all_wrap .pageContents .content #revision .revision_right h2::before,
	#all_wrap .pageContents .content #revision .revision_right h2::after {
		display: none;
	}
	#all_wrap .harf #formarea {
		width: 100%;
		padding: 15px;
		margin: 0;
		background: #fafafa;
		border-radius: 10px;
		position: relative;
	}
	#all_wrap .harf table.contactform {
		margin-bottom: 0;
	}
	#all_wrap .harf table.contactform th {
		display: block;
		font-style: normal;
		font-feature-settings: "palt";
		border: none;
		border-bottom: none;
		text-align: left;
		vertical-align: middle;
		font-family: var(--font-jp);
		font-size: 14px;
		line-height: 1;
		font-weight: bold;
		background: var(--main);
		color: #fff;
		width: 100%;
		padding: 10px;
		margin: 0;
		border-bottom: none;
		position: relative;
	}
	#all_wrap table.contactform th > span {
		top: 50%;
		right: 10px;
	}
	#all_wrap .harf table.contactform td {
		display: block;
		border: none;
		background: none;
		vertical-align: inherit;
		border-bottom: none;
		width: 100%;
		padding: 10px 0 20px;
		margin: 0;
		font-size: 14px;
		font-weight: 300;
		border-bottom: none;
	}
	#all_wrap .harf table.contactform td input[type="text"],
	#all_wrap .harf table.contactform td input[type="email"] {
		width: 100%;
		padding: 10px;
		margin: 0;
		border-radius: 3px;
		background: #fff;
		border: 1px solid #ddd;
		outline: none;
		max-width: 100%;
	}
	#all_wrap .harf table.contactform td textarea {
		width: 100%;
		height: 340px;
		padding: 10px;
		margin: 0;
		border-radius: 3px;
		background: #fff;
		border: 1px solid #ddd;
		outline: none;
	}
}

.video{
  text-align: center;
}

.kakutan_movie {
	width: 100%;
	padding: 50px 0 0;
	margin: 0 auto;
	position: relative;
	text-align: center;
}

.movie {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	text-align: center;
	position: relative;
}
.movie iframe {
	width: 100%;
	max-width: 800px;
	height: auto;
	aspect-ratio: 800 / 450;
	padding: 0;
	margin: 0 auto;
	position: relative;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	.movie iframe {
		width: 100%;
		max-width: 100%;
	}
}