@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

:root {
	--common-red-color: #911D22;
	--common-red02-color: #D07A7A;
	--common-pink-color: #E3C7C7;
	--common-orenge-color: #E67318;
	--common-orenge02-color: #FAE1DD;
	--common-orenge03-color: #E86A55;
	--common-brown-color: #7E7562;
	--common-beige-color: #E9D8A5;
	--common-gray-color: #D3D1CB;
	--common-yellow-color: #FFFA84;
}
body {
	background-color:#fff;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing:1px;
}
body.is-fixed {
	height: 100%;
    overflow: hidden;
}
.main {
	padding:0;
	border:none;
}
.container {
	overflow-x: hidden;
}
.content {
	margin-top:0;
}
.wrap {
	max-width: 960px;
	width:100%;
}
.wrap02 {
	max-width: 1120px;
	width:100%;
	margin-left:auto;
	margin-right:auto;
}
.wrap03 {
	max-width: 800px;
	width:100%;
	margin-left:auto;
	margin-right:auto;
}
.entry-content {
	margin:0;
}
.sp {
	display:none;
}
a {
	transition: 0.2s;
}
a:hover {
    transition: 0.2s;
	transform: translate(2px,2px);
	color: var(--common-red-color);
}

/*font*/
.bold {
	font-weight:bold;
}
.red {
	color:var(--common-red-color);
}
.orange {
	color:var(--common-orenge03-color);
}
.bgYellow {
	background-color:var(--common-yellow-color);
}

/*title*/
h1 {
	color:var(--common-red-color);
	font-size:36px;
	font-weight:bold;
	margin-bottom:40px;
	text-align:center;
	line-height:1.3;
}
.h1SubTitle {
	color: var(--common-red-color);
	font-size:24px;
	font-weight:normal !important;
}
.h1SubTitleEn {
	color: var(--common-red-color);
    font-size: 36px;
    font-weight: bold;
    margin-bottom: 40px;
    text-align: center;
}
.h1StepIcon {
	width:68px;
}
h2 {
	color:var(--common-red-color);
	font-size:36px;
	font-weight:bold;
	margin-bottom:40px;
	text-align:center;
	line-height:1.3;
}
.article h2 {
	margin-bottom:40px;
	background-color: transparent;
	font-size:36px;
}
.article h2.qaH2,.article h2.aboutH2 {
	padding:13px 24px;
	border-left:2px solid var(--common-red-color);
	font-size:32px;
	text-align:left;
}
h2.contactH2 {
	font-size:24px;
	margin-bottom:0 !important;
}
h3 {
	color:var(--common-red-color);
	font-size:24px;
	font-weight:bold;
	margin-bottom:20px;
	text-align:center;
	line-height:1.3;
}
.article h3 {
	border:none;
	padding-left:0;
	padding-right:0;
	margin-bottom:0;
}
.titleDeco {
	position:relative;
	padding:0 75px;
	display:inline-block;
}
.titleDeco:before,.titleDeco:after {
	content:'';
	display:inline-block;
	background-size:100% auto;
	background-repeat:no-repeat;
	width:45px;
	height:64px;
	position:absolute;
	top:50%;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.titleDeco:before {
	background-image:url(./images/top/topIntroTitle.svg);
	left:0;
}
.titleDeco:after {
	background-image:url(./images/top/topIntroTitle.svg);
	right:0;
	transform: scale(-1, 1);
	margin-top: -32px;
}

/*header*/
.header-in {
	position:relative;
}
.headerMain {
	border-bottom:1px solid var(--common-pink-color);
}
.headerMainInner {
	display:flex;
	justify-content:space-between;
	align-items:center;
	padding:20px 0;
	max-width:1200px;
	width:100%;
	margin:0 auto;
}
.headerLogo {
	width:134px;
}
.headerLogo img {
	width:100%;
}
.headerBtnList {
	display:flex;
	align-items:center;
	gap:16px;
}
.headerBtnSp {
	display:none;
}

.headerNavMenu {
	display:none;
	position:absolute;
	right:10px;
	top:18px;
}
.headerContactBtn {
	display:flex;
	align-items:center;
	justify-content:center;
	height:100%;
}
.headerContactBtnList {
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column;
	gap:20px;
	width:100%;
}
.headerContactBtnList .btnWhite {
	width:100%;
}
.menu-trigger,
.menu-trigger span,
.menu-trigger02,
.menu-trigger02 span{
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative;
	width: 20px;
	height: 16px;
	background: none;
	border: none;
	appearance: none;
	cursor: pointer;
	margin-top:5px;
}
.menu-trigger02 {
	position: relative;
	background: none;
	border: none;
	appearance: none;
	cursor: pointer;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #fff;
	border-radius: 4px;
}
.menu-trigger02 span {
	position: absolute;
	left: 38%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	width: 20px;
	height: 2px;
	background-color: #fff;
	border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 7px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}


#menu01.active span:nth-of-type(1) {
	transform: translateY(20px) rotate(-45deg);
	top: -12px;
}
#menu01.active span:nth-of-type(2) {
	opacity: 0;
}
#menu01.active span:nth-of-type(3) {
	transform: translateY(6px) rotate(45deg);
	bottom: 12px;
}

#menu02 span:nth-of-type(1) {
	opacity: 0;
}
#menu02 span:nth-of-type(2) {
	opacity: 0;
}
#menu02 span:nth-of-type(3) {
	opacity: 0;
}
#menu02.active span:nth-of-type(1) {
	transform: translateY(20px) rotate(-45deg);
	top: -9px;
	opacity: 1;
}
#menu02.active span:nth-of-type(3) {
	transform: translateY(6px) rotate(45deg);
	bottom: 33px;
	opacity: 1;
}

.headaerNavInner {
	max-width:1000px;
	margin:0 auto;
}
.headaerNavInner ul {
	display:flex;
	padding:0;
	list-style:none;
}
.headaerNavInner ul li {
	width:20%;
}
.headaerNavInner ul li a,.headaerNavInner ul li span {
	height:60px;
	display:flex;
	align-items:center;
	justify-content:center;
	text-decoration:none;
	font-size:14px;
	color:#333;
}
.headaerNavInner ul li a:hover,.headaerNavInner ul li span:hover {
	font-weight:bold;
	color: var(--common-red-color);
	border-bottom:2px solid var(--common-red-color);
	transform: translate(0,0);
}
.headaerNavInner ul li span span:hover {
	border-bottom:none;
}
.headaerNavInner ul li.about .aboutMore span {
	padding-right:20px;
	position:relative;
}
.headaerNavInner ul li.about .aboutMore span:after {
	content:'';
	display:inline-block;
	background-image:url(./images/common/arrowNav01.svg);
	background-size:100% auto;
	background-repeat:no-repeat;
	width:18px;
	height:18px;
	position:absolute;
	right:0;
	top:50%;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.headaerNavInner ul li.about .aboutMore:hover span:after {
	background-image:url(./images/common/arrowNav02.svg);
}
.headerNavSub {
    position: absolute;
    top: -1000px;
	z-index: 1;
    width: 600px;
	display:flex;
	background-color:#fff;
}
.headerNavSub.course {
    width: 800px;
	flex-wrap:wrap;
	left:-400px;
}
.headaerNavInner ul li.about {
	position:relative;
}
.headaerNavInner ul li.about:hover .headerNavSub{
    transform: translateY(1060px);
    -ms-transform: translateY(1060px);/*IE９対策*/
}
.headaerNavInner ul .headerNavSub li {
	width:calc(100% / 3);
	text-align:left;
}
.headaerNavInner ul .headerNavSub li a {
	box-sizing:border-box;
	padding:0 20px 0 44px;
	justify-content:flex-start;
	position:relative;
	color:var(--common-red-color);
}
.headaerNavInner ul .headerNavSub li a:hover {
	background-color:var(--common-orenge02-color);
	font-weight:normal;
	border:none;
}
.headaerNavInner ul .headerNavSub li a:before {
	content:'';
	display:inline-block;
	background-image:url(./images/common/arrowRed02.svg);
	background-size:100% auto;
	background-repeat:no-repeat;
	width:14px;
	height:9px;
	position:absolute;
	left:20px;
	top:50%;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.headaerNavInner ul .headerNavSub li a:after {
	content:'';
	display:inline-block;
	background-color:var(--common-pink-color);
	width:1px;
	height:20px;
	position:absolute;
	right:0;
	top:50%;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.headaerNavSpBtn {
	display:none;
}
.headaerNavInner ul .headerNavSub.course li:nth-child(3n) a:after {
	content:none;
}

.headerNav.headerNav02 {
	position:absolute;
}
.headerNav.headerNav02 {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 1;
	width: 100vw;
	height: 100vh;
	transform: translateY(100vh);
	transition: all .3s linear;
	background-color:#fff;
	padding-bottom:60px;
	box-sizing:border-box;
	overflow:auto;
}
.headerNav.headerNav02.active{
	transform: translateY(0);
}
.headerNav.headerNav02 .headaerNavInner {
	height:100%;
}

/*footer*/
.breadcrumb.sbp-main-before, .breadcrumb.sbp-footer-before, .breadcrumb.pbp-main-before, .breadcrumb.pbp-footer-before {
	margin-top: 0;
	padding: 0.6em 0;
	border-bottom: 1px solid #e0e0e0;
}

.footer {
	margin:0;
	padding-top:60px;
	padding-bottom:0;
}
.footerWrap {
	display:flex;
	justify-content:space-between;
	gap:40px;
}
.footerMenu {
	display:flex;
	width:600px;
	gap:20px;
	justify-content:space-between;
}
.footerMenuTitle {
	font-size:16px;
	margin-bottom:5px;
}
.footerMenuList {
	margin:0;
	padding:0;
}
.footerMenuList li {
	padding:0;
	margin:0 0 3px;
	list-style:none;
	line-height:1.4
}
.footerMenuList li a {
	color:#333;
	font-size:12px;
	text-decoration:none;
}
.footerMenuList li ul {
	padding-left: 0;
    margin-left: 25px;
}
.footerMenuList li ul li {
	list-style: disc;
}
.footerAddress {
	width:270px;
	color:#828282;
	font-size:12px;
}
.footerAddress p {
	margin-bottom:5px;
}
.footerInstaArea {
	font-size:12px;
}
.footerInstaIcon {
	width:32px;
	margin-right:10px;
	vertical-align:middle;
}
.footerCopy {
	padding:60px 0;
	text-align:center;
	font-size:10px;
	color:#828282;
}
.spFooterMenu {
	display:none;
}
/*btn*/
.btnWhite {
	border:1px solid var(--common-red-color);
	height:46px;
	border-radius:23px;
	box-sizing:border-box;
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--common-red-color);
	text-decoration:none;
	padding:10px 20px;
	font-weight:bold;
}
.btnWhite .arrowIcon {
	width:13px;
	margin-left:5px;
}
.btnWhite.big {
	max-width:400px;
	line-height: 1.2;
	height:60px;
	border-radius:30px;
	font-size:16px;
	margin-left:auto;
	margin-right:auto;
}
.btnWhite.big .icon {
	width:16px;
	margin-left:10px;
}
.btnWhite02 {
	height:36px;
	border-radius:22px;
	box-sizing:border-box;
	display:flex;
	align-items:center;
	justify-content:center;
	border:1px solid var(--common-red-color);
	color:var(--common-red-color);
	text-decoration:none;
	padding:8px 32px;
	font-weight:bold;
	font-size:14px;
	max-width:258px;
	margin-left:auto;
	margin-right:auto;
}
.btnWhite02 .icon {
	width:20px;
	margin-left:15px;
}
.btnWhite02.active .icon {
	transform: scale(1, -1);
}
.btnRed {
	background-color:var(--common-red-color);
	height:46px;
	border-radius:23px;
	box-sizing:border-box;
	display:flex;
	align-items:center;
	justify-content:center;
	color:#fff;
	text-decoration:none;
	padding:10px 20px;
	font-weight:bold;
}
.btnRed:hover {
	color:#fff;
}
.btnRed.mini {
	max-width:406px;
	line-height: 1.2;
}
.btnRed .icon {
	width:13px;
}
.btnRed.big {
	max-width:512px;
	line-height: 1.2;
	height:68px;
	border-radius:34px;
	font-size:16px;
	margin-left:auto;
	margin-right:auto;
}
.btnRed.big .icon {
	width:20px;
}
.btnOrenge {
	background-color:var(--common-orenge-color);
	height:54px;
	border-radius:27px;
	box-sizing:border-box;
	display:flex;
	align-items:center;
	justify-content:center;
	color:#fff;
	text-decoration:none;
	padding:12px 54px 12px 24px;
	font-size:18px;
	letter-spacing: 1.2px;
	position:relative;
	box-shadow: inset 0 0 2px #E49E30;
	margin-top:10px;
}
.btnOrenge:hover {
	color:#fff;
}
.btnOrenge:after {
	content:'';
	display:inline-block;
	background-image:url(./images/common/arrowWhite02.svg);
	background-size:100% auto;
	background-repeat:no-repeat;
	width:10px;
	height:16px;
	position:absolute;
	right:24px;
	top:50%;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.btnBrown {
	background-color:var(--common-brown-color);
	height:44px;
	border-radius:22px;
	box-sizing:border-box;
	display:flex;
	align-items:center;
	justify-content:center;
	color:#fff;
	text-decoration:none;
	padding:12px 30px;
	font-weight:bold;
	font-size:14px;
	max-width:210px;
	margin-left:auto;
	margin-right:auto;
}
.btnBrown span {
	position:relative;
}
.btnBrown span:after {
	content:'';
	display:inline-block;
	background-image:url(./images/common/arrowWhite.svg);
	background-size:100% auto;
	background-repeat:no-repeat;
	width:20px;
	height:19px;
	position:absolute;
	right:-30px;
	top:50%;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.btnBrown:hover {
	background-color:var(--common-beige-color);
	height:44px;
	border-radius:22px;
	box-sizing:border-box;
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--common-brown-color);
	text-decoration:none;
	padding:12px 30px;
	font-weight:bold;
	font-size:14px;
	max-width:210px;
	margin-left:auto;
	margin-right:auto;
}
.btnBrown:hover span:after {
	background-image:url(./images/common/arrowGray.svg);
}
.btnBrown.big {
	height:68px;
	border-radius:34px;
	padding:24px 32px;
	font-size:18px;
	max-width:325px;
}
.btnBrown.big span:after {
	width:28px;
	height:28px;
	right:-35px;
}
.btnBrown.wide {
	max-width:392px;
	font-size:16px;
}
.btnBrown .icon {
	width:20px;
	margin-left:10px;
}
.btnBeige {
	background-color:var(--common-beige-color);
	height:44px;
	border-radius:22px;
	box-sizing:border-box;
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--common-brown-color);
	text-decoration:none;
	padding:12px 30px;
	font-weight:bold;
	font-size:14px;
	max-width:210px;
	margin-left:auto;
	margin-right:auto;
}
.btnBeige:hover {
	color:var(--common-brown-color);
}
.btnBeige .icon {
	width:20px;
	margin-left:10px;
}
.btnGray {
	background-color:var(--common-gray-color);
	height:36px;
	border-radius:22px;
	box-sizing:border-box;
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--common-red-color);
	text-decoration:none;
	padding:8px 32px;
	font-weight:bold;
	font-size:14px;
	max-width:258px;
	margin-left:auto;
	margin-right:auto;
}
.btnGray .icon {
	width:20px;
	margin-left:15px;
}
.btnGray.active .icon {
	transform: scale(1, -1);
}
.submitBtn {
	border: 1px solid var(--common-red-color) !important;
	background-color:#fff !important;
	color: var(--common-red-color) !important;
    height: 60px;
    border-radius: 30px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--common-red-color);
    text-decoration: none;
    padding: 10px 20px;
    font-weight: bold;
	font-size:16px;
	max-width:400px;
	margin:0 auto 40px !important;
}
/*toppage*/
.mainV {
	width:100%;
	height:610px;
	background-image:url(./images/top/top01syugou.jpg);
	background-position:center;
	background-size:120% auto;
	position:relative;
	background-position: bottom;
}
.mianVconts {
	position:absolute;
	width:100%;
	height:610px;
	max-width:960px;
	top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.mianVinner {
	position:absolute;
	width:562px;
	top:180px;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items: center;
	gap:10px;
}
.mianVsubTitle {
	color:var(--common-red-color);
	font-size:18px;
	font-weight:bold;
	text-align:center;
}
.mianVmainTitle {
	font-size:34px;
	font-weight:500;
	line-height: 1.4;
	color: var(--cocoon-text-color);
	text-align:center;
}

.topIntro {
	background-color:#F8F8F8;
}
.topIntroInner {
	padding:60px 0;
	text-align:center;
	font-size:16px;
}
.topIntroImg {
	max-width:600px;
	margin:0 auto 40px;
}

.topFeaturesInner {
	padding:60px 0 0;
	text-align:center;
	font-size:16px;
}

.pointList {
	display:flex;
	flex-wrap:wrap;
	gap:32px;
	justify-content:center;
	margin:50px 0;
}
.pointListIn {
	width:180px;
	position:relative;
	border:2px dashed var(--common-pink-color);
	border-radius:10px;
	box-sizing:border-box;
	padding:40px 15px 20px;
	font-size:14px;
	text-align:left;
}
.pointListIn:after {
	content: '';
    display: inline-block;
    width: 90px;
    height: 51px;
    background-color: #fff;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: -4px;
    top: -16px;
}
.pointListIn:nth-child(1):after {
	background-image:url(./images/common/point01.svg);
}
.pointListIn:nth-child(2):after {
	background-image:url(./images/common/point02.svg);
}
.pointListIn:nth-child(3):after {
	background-image:url(./images/common/point03.svg);
}
.pointListIn:nth-child(4):after {
	background-image:url(./images/common/point04.svg);
}
.pointListTitle {
	color:var(--common-red-color);
	font-weight:bold;
	font-size:19px;
	margin-bottom:5px;
}
@keyframes infinity-scroll-left {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-100%);
	}
}
.scroll-infinity__wrap {
	display: flex;
	overflow: hidden;
}
.scroll-infinity__list {
	display: flex;
	list-style: none;
	padding: 0 16px 0 0;
	gap:16px;
}
.scroll-infinity__list--left {
	animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
.scroll-infinity__item {
	width: calc((100vw - 64px) / 5);
}
.scroll-infinity__item>img {
	width: 100%;
}

.topCourse {
	background-color:#F8F8F8;
}
.topCourseInner {
	padding:60px 0;
	text-align:center;
	font-size:16px;
}
.stepConts {
	margin-bottom:40px;
}
.stepTitle {
	font-size:20px;
	font-weight:bold;
	color:var(--common-red-color);
	display:inline-block;
	padding:40px 0 25px 135px;
	position:relative;
}
.stepTitle:after {
	content: '';
    display: inline-block;
    width: 119px;
    height: 60px;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 0;
    bottom: 0;
}
.stepTitle.step01:after {
	background-image:url(./images/top/step01.svg);
}
.stepTitle.step02:after {
	background-image:url(./images/top/step02.svg);
}
.stepTitle.step03:after {
	background-image:url(./images/top/step03.svg);
}
.stepTitle.stepOther:after {
	background-image:url(./images/top/other.svg);
}
.stepContsIn {
	background-color:#fff;
	border-radius:40px;
	box-sizing:border-box;
	padding:32px;
	text-align:center;
}
.stepContsIn p {
	margin-bottom:32px;
}
.stepContsIn.mb32 {
	margin-bottom:32px;
}
.stepContsCaption {
	font-size:20px;
	font-weight:bold;
	color:var(--common-red-color);
	background: linear-gradient(transparent 50%, #FFFA84 50%);
	display:inline-block;
	margin-bottom:40px;
}
.stepCourseList {
	display:flex;
	gap:20px;
	margin-top:32px;
}
.stepCourse {
	border: 2px dashed var(--common-red02-color);
	padding:40px 48px;
	border-radius:40px;
}
.stepCourseList .stepCourse {
	width:calc((100% - 20px) / 2);
	display:flex;
	flex-direction:column;
	padding-top:5px;
}
.stepCourse p {
	margin-bottom:32px;
}
.stepCourseList.stepCourse03 {
	margin-top:0;
}
.stepCourseList.stepCourse03 .stepContsIn {
	width:calc((100% - 20px) / 2);
}
.stepCourseList.stepCourseOther {
	margin-top:0;
}
h3.courseTitle {
	font-size:36px;
}
.courseTitleSub {
	font-size:16px;
}
.stepSubCourseTitle {
	display:flex;
	align-items:center;
	color:var(--common-red-color);
	font-size:12px;
	gap:10px;
	width: calc(100% + 80px);
    justify-content: center;
    margin-left: -40px;
}
.stepSubCourseTitle > .icon {
	width:90px;
}
.stepSubCourseIn {
	margin-top:auto;
}
.stepAll {
	display:none;
}


.topAccessInner  {
	padding:60px 0;
	text-align:center;
	font-size:16px;
}
.schoolList {
	display:flex;
	gap:32px;
	margin:32px 0;
}
.schoolListIn {
	width:calc((100% -64px) / 3);
	border-radius:24px;
	padding:16px;
	box-sizing:border-box;
	border:1px solid var(--common-red-color);
	text-align:left;
	font-size:14px;
}
.schoolListImg {
	margin-bottom:24px;
}
.schoolListTitle {
	color:var(--common-red-color);
	font-size:20px;
	margin-bottom:5px;
}
.schoolCaption {
	color:var(--common-brown-color);
	font-size:14px;
	margin-top:16px;
}

.topActivity {
	background-color:#F8F8F8;
}
.topActivityInner {
	padding:60px 0;
	text-align:center;
	font-size:16px;
}
.topActivityIn {
	text-align:left;
	font-size:14px;
	padding:0 12px;
	text-decoration: none;
	color: var(--cocoon-text-color);
}
.topActivityName {
	color:var(--common-red-color);
	font-size:18px;
	margin:10px 0;
	font-weight:bold;
}
.topActivity .arrow_box {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin: 20px 0 0;
    position: relative;
}

.topActivity .prev-arrow,
.topActivity .next-arrow {
    display: block;
    width: 50px;
    height: 50px;
    background: var(--common-orenge02-color);
    border-radius: 50%;
    transition: all .3s ease;
    cursor: pointer;
    position:relative;
	opacity:0.85;
	filter:drop-shadow(0px 0 4px rgba(0, 0, 0, 0.15));
	position: absolute;
    top: 20%;
	z-index: 1;
}

.topActivity .prev-arrow {
    transform: rotate(180deg);
   left: calc(50% - 500px);
}
.topActivity .next-arrow {
	left: calc(50% + 450px);
}

.topActivity .prev-arrow::before,
.topActivity .next-arrow::before{
    position:absolute;
    content: "";
    width:10px;
    height:10px;
    border-right: 2px solid var(--common-red-color);
    border-top: 2px solid var(--common-red-color);
    top:0;
    bottom:0;
    left:0;
    right:0;
    margin:auto;
    transform:rotate(45deg);
}

.topArtistInner {
	padding:60px 0;
	font-size:16px;
}
.topArtistInner.wrap {
	max-width:760px;
	margin:0 auto;
}
.topArtistList {
	margin-top:40px;
}
.topArtistIn img {
	width:100%;
}
.topArtistIn {
	padding:5px;
}
.topArtist .prev-arrow,
.topArtist .next-arrow {
    display: block;
    width: 50px;
    height: 50px;
    background: var(--common-orenge02-color);
    border-radius: 50%;
    transition: all .3s ease;
    cursor: pointer;
    position:relative;
	opacity:0.85;
	filter:drop-shadow(0px 0 4px rgba(0, 0, 0, 0.15));
	position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	z-index: 1;
}

.topArtist .prev-arrow {
    transform: rotate(180deg);
	left:-80px;
	margin-top: -25px;
}
.topArtist .next-arrow {
	right:-80px;
}

.topArtist .prev-arrow::before,
.topArtist .next-arrow::before{
    position:absolute;
    content: "";
    width:10px;
    height:10px;
    border-right: 2px solid var(--common-red-color);
    border-top: 2px solid var(--common-red-color);
    top:0;
    bottom:0;
    left:0;
    right:0;
    margin:auto;
    transform:rotate(45deg);
}

.topNews {
	background-color:#F8F8F8;
}
.topNewsInner {
	padding:60px 0;
	text-align:center;
	font-size:16px;
}
.topNewsList {
	max-width:760px;
	margin:40px auto;
	border-top:1px solid #e0e0e0;
}
.topNewsList ul {
	margin:0;
	list-style:none;
	padding:0;
}
.topNewsList ul li {
	padding:0;
	margin:0;
	border-bottom:1px solid #e0e0e0;
}
.topNewsIn {
	display:flex;
	flex-direction:column;
	position:relative;
	padding:24px 0;
	gap:5px;
	font-size:16px;
	color:#333;
	text-decoration:none;
	text-align:left;
}
.topNewsIn:after {
	content:'';
	display:inline-block;
	width:9px;
	height:15px;
	background-size:100% auto;
	background-repeat:no-repeat;
	background-image:url(./images/common/arrowRed.svg);
	position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	right:0;
}
.topNewsDate,.topNewsCat {
	color:#828282;
	font-size:14px;
}
.topNewsCat {
	display:inline-block;
	padding-left:20px;
	position:relative;
}
.topNewsCat:before {
	content:'';
	display:inline-block;
	width:1px;
	height:12px;
	background-size:100% auto;
	background-color:#828282;
	position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	left:10px;
}

.topBnrAreaInner {
	padding:60px 0 0;
	text-align:center;
	font-size:16px;
}
.topBnr01 {
	max-width:960px;
	width:100%;
	margin:0 auto 32px;
	display:flex;
	gap:32px;
}
.topBnrIn,.topBnrIn02 {
	width:calc((100% - 96px) / 4);
	border-radius:16px;
	font-size:20px;
	font-weight:bold;
	display:flex;
	justify-content:center;
	align-items:center;
	border:2px solid var(--common-red-color);
	text-decoration:none;
	height:96px;
}
.topBnrIn {
	color:var(--common-red-color);
}
.topBnrIn:hover {
	color:#fff;
	background-color:var(--common-red-color);
}
.topBnr02 {
	max-width:1090px;
	width:100%;
	margin:0 auto;
	display:flex;
	gap:32px;
}
.topBnrIn03 {
	width:calc((100% - 62px) / 3);
}

/*page*/
body.page .article-header {
	display:none;
}
.pageMainTitle {
	background-color:#F8F8F8;
	text-align:center;
	margin:0;
	padding:60px 0;
	line-height: 1.2;
}
.pageMainTitle.noSub {
	padding:75px 0;
}
.pageMainTitle  h1 {
	margin-bottom:0;
}
.pageMainTitle.bgW {
	background-color:#fff;
}
.pageMainInfo {
	background-color:#F8F8F8;
}
.pageMainIn {
	background-color:#fff;
	padding:60px 0;
	border-radius:100px 100px 0 0;
}
.pageCourseIntro {
	text-align:center;
}
.pageCourseIntro02 {
	text-align:center;
	margin-bottom:60px;
}
.pageCourseIntroTitle {
	color: var(--common-red-color);
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 40px;
    text-align: center;
}
.pageCourseIntroTitle .sub {
	font-weight:normal;
	font-size:16px;
}
.pageCourseSlider {
	margin:40px 0;
}
.pageCourseSlider .slick-slide {
	transform: scale(.8);
	transition: transform .3s;
	width:600px
}
.pageCourseSlider .slick-slide.slick-center {
	transform: scale(1);
}
.pageCourseSlider .slick-slide img {
	border-radius:20px;
}

.pageCourseSlider .prev-arrow,
.pageCourseSlider .next-arrow {
    display: block;
    width: 84px;
    height: 84px;
    background: var(--common-orenge02-color);
    border-radius: 50%;
    transition: all .3s ease;
    cursor: pointer;
    position:relative;
	opacity:0.85;
	filter:drop-shadow(0px 0 4px rgba(0, 0, 0, 0.15));
	position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	z-index: 1;
}

.pageCourseSlider .prev-arrow {
    transform: rotate(180deg);
   left: calc(50% - 500px);
	margin-top:-42px;
}
.pageCourseSlider .next-arrow {
	left: calc(50% + 450px);
}

.pageCourseSlider .prev-arrow::before,
.pageCourseSlider .next-arrow::before{
    position:absolute;
    content: "";
    width:10px;
    height:10px;
    border-right: 2px solid var(--common-red-color);
    border-top: 2px solid var(--common-red-color);
    top:0;
    bottom:0;
    left:0;
    right:0;
    margin:auto;
    transform:rotate(45deg);
}
.pointListIn.point03 {
	width: calc((100% - 64px) / 3);
}
.pointListIn.point03 .pointListTitle {
	text-align:center;
}
.pageCourseMessage {
	background-color:#F8F8F8;
	padding:60px 0;
	text-align:center;
	font-size:16px;
	margin-bottom:0;
}
.pageCourseClass {
	padding:60px 0;
}
.pageCourseClassList {
	display:flex;
	flex-wrap:wrap;
	gap:24px;
}
.pageCourseClassIn {
	width:100%;
	display:flex;
	gap:40px;
}
.pageCourseClassImg {
	width:420px;
}
.pageCourseClassImg img {
	border-radius:20px;
}
.pageCourseClassInfo {
	flex:1;
	display:flex;
	flex-direction:column;
	gap:20px;
	font-size:16px;
}
.pageCourseClassTitle {
	font-size:24px;
	font-weight:bold;
	color: var(--common-red-color);
}
.pageCourseSeason {
	background-color:#F8F8F8;
	padding:60px 0;
	text-align:center;
	font-size:16px;
	margin-bottom:0;
}
.tabContentArea {
	width: 100%;
	max-width: 836px;
	margin: 0 auto;
	padding: 30px 20px;
}
.seasonTabContainer {
	display: flex;
	gap:16px;
}
.seasonTabContainer {
    margin: 0 0 24px;
	border-bottom: 2px solid var(--common-red-color);
}
.seasonTabContainer .tab {
	font-weight: 500;
	text-align:center;
	width: calc((100% - 32px) / 3);
	padding: 10px;
	background-color: #EFECE4;
	border-radius:20px 20px 0 0;
	color:#7E7562;
	cursor: pointer;
	font-size:14px;
	display: flex;
    justify-content: center;
    align-items: center;
}
.seasonTabContainer .tab.active {
	background-color: var(--common-orenge02-color);
	color:var(--common-red-color);
	border-top: 2px solid var(--common-red-color);
	border-left: 2px solid var(--common-red-color);
	border-right: 2px solid var(--common-red-color);
	position: relative;
    top: 2px;
}
.seasonContentContainer {
	padding:24px;
	background-color:#fff;
}
.seasonContentContainer .content {
	display: none; /*必須*/
}
.seasonContentContainer .content > div {
	width:30%;
	text-align:left;
}
.seasonContentContainer .content > div:nth-child(2) {
	width:40%;
}
.seasonContentContainer .content.show {
	display: block; /*必須*/
	display:flex;
	gap:24px;
	font-size:14px;
}
.seasonContentTitle {
	color:var(--common-red-color);
	font-size:16px;
	margin-bottom:5px;
	font-weight:bold;
}
.seasonContentList {
	display:flex;
	gap:5px;
	flex-direction:column;
	border-right:1px dotted var(--common-pink-color);
}
.seasonContentList02 {
	display:flex;
	justify-content:center;
	align-items:center;
	height:calc(100% - 28.8px);
}
.pageCourseClassAboutIn {
	margin-bottom:24px;
}
.pageCourseClassAboutTitle {
	border-radius:20px 20px 0 0;
	border:1px solid #CCC4AE;
	text-align:center;
	color: var(--common-red-color);
    font-size: 24px;
	font-weight:bold;
	padding:10px 0;
	background-color:#EFECE4;
	box-sizing:border-box;
}
.pageCourseClassAboutConts {
	border-radius:0 0 20px 20px;
	border-left:1px solid #CCC4AE;
	border-right:1px solid #CCC4AE;
	border-bottom:1px solid #CCC4AE;
	padding:32px;
	box-sizing:border-box;
	font-size:14px;
	background-color:#fff;
}
.pageCourseClassAboutConts.mb40 {
	margin-bottom:40px;
}
.pageCourseClassAboutConts .caption {
	text-align:left;
	margin-bottom:15px;
}
.pageCourseClassAboutConts table.nb th,.pageCourseClassAboutConts table.nb td,.pageCourseClassAboutConts table.nb tr {
	border:none !important;
	background-color:transparent !important;
	text-align:left;
	vertical-align: top;
}
.pageCourseClassAboutConts table.nb th {
	font-weight:normal;
}
.pageCourseClassAboutConts ul {
	list-style: none;
    padding-left: 0.5em;
    margin-left: 1.2em;
	text-align:left;
}
.pageCourseClassAboutConts ul li{
    text-indent: -1.5em;
}
.pageCourseClassAboutConts ul li:before{
    content: "※";
    margin-right: 0.5em;
}
.pageCourseClassAboutConts table.bd {
	border-collapse:separate;
	border-spacing:5px;
}
.pageCourseClassAboutConts table.bd th {
	background-color:var(--common-orenge02-color);
	color: var(--common-red-color);
	border-color:#F3B4AA;
}
.pageCourseClassAboutConts table.bd th:nth-child(1) {
	font-weight:bold;
}
.pageCourseClassAboutConts table.bd th:nth-child(1),.pageCourseClassAboutConts table.bd th:nth-child(2) {
	width:30%;
}
.pageCourseClassAboutConts table.bd tr:nth-of-type(2n+1) {
	background-color:#fff;
}
.pageCourseClassAboutConts table.bd td {
	text-align:left;
	border-color:#CCC4AE;
	vertical-align:top;
}
.scrollable-table {
	width:100%;
}
.scrollable-table .details th, .scrollable-table .details td {
    white-space: break-spaces;
}
.pageCourseSche {
	padding:60px 0;
	text-align:center;
	font-size:16px;
}
.pageCourseScheList {
	display:flex;
	flex-wrap:wrap;
	gap:24px;
	width: 100% !important;
}
.pageCourseScheIn {
	width:calc((100% - 24px) / 2);
	border:1px solid #F3B4AA;
}
.pageCourseScheTitle {
	padding:16px;
	text-align:center;
	font-size:14px;
	font-weight:bold;
	background-color:#FAE1DD;
}
.pageCourseScheConts {
	padding:16px;
	font-size:14px;
	background-color:#FFFFFF;
}
.pageCourseScheConts dl {
	display:flex;
	flex-wrap:wrap;
	gap:5px 15px;
	width:100%;
	margin-bottom:0;
}
.pageCourseScheConts dl dt {
	font-weight:bold;
	width:30%;
	text-align:right;
}
.pageCourseScheConts dl dd {
	width:calc(70% - 15px);
	margin-left:0;
}
.pageCourseScheConts .center {
	text-align:center;
}
.pageCourseScheTb {
	width:100%;
	border-spacing: 8px;
	border-collapse : separate ;
}
.pageCourseScheTb td {
	border:1px solid #F3B4AA;
	text-align:center;
	padding:0;
	font-size:14px;
	font-weight:bold;
	width:20%;
}
.pageCourseScheTb .title {
	background-color: #FAE1DD;
	height:60px;
	display:flex;
	align-items:center;
	justify-content:center;
}
.pageCourseScheTb .txt {
	height:52px;
	display:flex;
	align-items:center;
	justify-content:center;
	line-height:1.4;
}
.pageCourseScheTb tr:nth-of-type(2n+1) {
	background:#fff;
}
.pageAccess {
	background-color: #F8F8F8;
}
.pageSchoolInfo {
	display:flex;
	gap:24px;
	flex-wrap:wrap;
}
.pageSchoolIn {
	display:flex;
	gap:40px;
	width:100%;
}
.pageSchoolImg {
	width:420px;
}
.pageSchoolImg img {
	border-radius:20px;
}
.pageSchoolConts {
	width:calc(100% - 460px);
	font-size:16px;
}
.pageSchoolIn02 {
	display:flex;
	gap:24px;
	width:100%;
	max-width:864px;
	margin:0 auto;
	flex-wrap:wrap;
}
.pageSchoolImg02 {
	width:calc((100% - 24px)/2);
	text-align:center;
	font-size:14px;
}
.pageSchoolImg02 img {
	border-radius:20px;
}
.pageSchoolConts02 {
	max-width:864px;
	margin:0 auto 24px;
	font-size:16px;
}
.pageSchoolAccess {
	background-color: #F8F8F8;
	padding:60px 0;
	margin-bottom:0;
}
.map {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 65%;
}
 
.map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.pageSchoolAccessInfo {
	font-size:16px;
	text-align:center;
	padding:32px 0;
}
.pageSchoolAccessTel {
	display:flex;
	justify-content:center;
	align-items:center;
	gap:10px;
	margin-bottom:16px;
}
.pageSchoolAccessTel span:nth-child(1) {
	font-size:20px;
}
.pageSchoolAccessTel span:nth-child(2) {
	font-size:36px;
	font-weight:bold;
}
.pageSchoolAccessTrans {
	border-radius:20px;
	background-color:#fff;
	border:1px solid #CCC4AE;
	padding:32px;
	display:flex;
	flex-direction:column;
	gap:24px;
	font-size:16px;
	margin-bottom:32px;
}
.pageSchoolAccessTransTitle {
	color: var(--common-red-color);
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 16px;
}
.pageQaBtnList {
	max-width:816px;
	margin:0 auto 60px;
}
.pageQaBtnList ul {
	padding:0;
	margin:0;
	display:flex;
	flex-wrap:wrap;
	gap:16px;
}
.pageQaBtnList ul li {
	width:calc((100% - 16px) / 2);
	list-style:none;
	padding:0;
	margin:0;
}
.pageQaBtnList ul li a {
	display:block;
	padding:16px 16px 16px 58px;
	border:1px solid var(--common-red-color);
	color:var(--common-red-color);
	text-decoration:none;
	position:relative;
	font-size:16px;
	font-weight:bold;
}
.pageQaBtnList ul li a:before {
	content: '';
    display: inline-block;
    background-image: url(./images/common/arrowNav02.svg);
    background-size: 100% auto;
    background-repeat: no-repeat;
    width: 18px;
    height: 18px;
    position: absolute;
    left: 24px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.pageQaList {
	margin-bottom:60px !important;
	border-bottom:1px solid var(--common-pink-color);
}
.pageQaList dt {
	border-top:1px solid var(--common-pink-color);
	padding:16px 60px 16px 60px;
	font-size:16px;
	font-weight:bold;
	position:relative;
}
.pageQaList dt:before {
	content:'Q.';
	display:inline-block;
	position:absolute;
	left: 24px;
}
.pageQaList dt span {
	border-radius:50%;
	border:2px solid var(--common-red-color);
	width:20px;
	height:20px;
	display:inline-block;
	position:absolute;
	right:24px;
	top:20px;
}
.pageQaList dt span::before,
.pageQaList dt span::after {
	content: '';
	display: block;
	width: 12px;
	height: 2px;
	border-radius: 5px;
	background: var(--common-red-color);
	position: absolute;
	right: 2px;
	top: 50%;
	transform: translateY(-50%);
}
.pageQaList dt span::after {
	background: var(--common-red-color);
	transform: translateY(-50%) rotate(90deg);
	transition: 0.5s;
}
.pageQaList dt span.active::after {
	transform: rotate(0);
	transition: 0.5s;
	margin-top: -1px;
}
.pageQaList dd {
	border-top:1px solid var(--common-pink-color);
	padding:16px 24px 40px 60px;
	font-size:16px;
	position:relative;
	margin:0;
	display:none;
}
.pageQaList dd:before {
	content:'A.';
	display:inline-block;
	position:absolute;
	left: 24px;
	font-weight:bold;
}

.pageFlow {
	margin-bottom:60px !important;
}
.pageFlow dt {
	padding:16px 60px 16px 0;
	font-size:24px;
	font-weight:bold;
	color: var(--common-red-color);
	position:relative;
	display:flex;
}
.pageFlow dt .step {
	display:flex;
	color:#fff;
	border-radius:10px;
	height:40px;
	align-items:center;
	justify-content:center;
	background-color:var(--common-red-color);
	margin-right:10px;
	padding:0 15px;
}
.pageFlow dt span {
	border-radius:50%;
	border:2px solid var(--common-red-color);
	width:20px;
	height:20px;
	display:inline-block;
	position:absolute;
	right:24px;
	top:20px;
}
.pageFlow dt span::before,
.pageFlow dt span::after {
	content: '';
	display: block;
	width: 12px;
	height: 2px;
	border-radius: 5px;
	background: var(--common-red-color);
	position: absolute;
	right: 2px;
	top: 50%;
	transform: translateY(-50%);
}
.pageFlow dt span::after {
	background: var(--common-red-color);
	transform: translateY(-50%) rotate(90deg);
	transition: 0.5s;
}
.pageFlow dt span.active::after {
	transform: rotate(0);
	transition: 0.5s;
	margin-top: -1px;
}
.pageFlow dd {
	padding:16px 0 40px 0;
	font-size:16px;
	position:relative;
	margin:0;
	display:none;
}
.stepFlex {
	display:flex;
	gap:20px;
}
.stepFlex .img {
	width:160px;
}
.stepFlex .img img {
	border-radius:8px;
}
.stepFlex .txt {
	flex:1;
}
.pageQa {
    padding: 60px 0;
    font-size: 16px;
	background-color:#fff;
}

.companyP {
	font-size:16px;
	margin-bottom:80px !important;
}
.companyP02 {
	font-size:16px;
	margin-bottom:40px !important;
}
.message_voice {
	position: relative;
	height: 120px;
	overflow: hidden;
}
.message_voice.active {
	height: auto;
	margin-bottom:20px;
}
.message_voice::before {
	content: ""; 
	width: 100%;
	height: 100%;
	display: block;
	background: linear-gradient(rgba(248, 248, 248, 0) 0, #f8f8f8 90%);
	position: absolute;
	top: 0;
	left: 0;
}
.message_voice.active::before {
	background: none;
}

.contactBtnList {
	display:flex;
	gap:16px;
	margin-bottom:40px;
}
.contactBtnList.center {
	justify-content:center;
}
.contactBtn {
	width:calc((100% - 32px) / 3);
	box-sizing:border-box;
	background-color:var(--common-red-color);
	padding:16px 20px 16px 16px;
	font-size:16px;
	font-weight:bold;
	position:relative;
	color:#fff;
	text-decoration:none;
	line-height:1.2;
	border-radius:12px;
	text-align:center;
	height:60px;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction: column;
}
.contactBtn .sub {
	font-size:12px;
	font-weight:normal;
}
.contactBtn:before {
	content: '';
    display: inline-block;
    background-image: url(./images/common/arrowWhite.svg);
    background-size: 100% auto;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.contactBtn.orange {
	background-color: var(--common-orenge02-color);
    border: 1px solid var(--common-red-color);
	color:var(--common-red-color);
}
.contactBtn.orange:before {
	background-image: url(./images/common/arrowRed03.svg);
	width: 12px;
    height: 12px;
}
.contactBtn.orange:hover {
	background-color:var(--common-red-color);
	color:#fff;
}
.contactBtn.orange:hover:before {
	background-image: url(./images/common/arrowWhite.svg);
}
.contactBtn.white {
	background-color: var(--common-orenge02-color);
    border: 1px solid var(--common-red-color);
	color:var(--common-red-color);
	background-color:#fff;
	width: 520px;
}
.contactBtn.white:before {
	background-image: url(./images/common/arrowRed03.svg);
	width: 12px;
    height: 12px;
}
.contactBtn.white:hover {
	background-color:var(--common-red-color);
	color:#fff;
}
.contactBtn.white:hover:before {
	background-image: url(./images/common/arrowWhite.svg);
}
.contactIntro {
	text-align:center;
	font-size:16px;
}
.contactTb {
	border:none;
	background:none;
}
.contactTb tr {
	background:none !important;
}
.contactTb th,.contactTb td {
	display:block;
	width:100%;
	border:none;
	background:none;
	text-align:left;
	font-size:16px;
}
.contactTb td {
	padding-top:0;
	padding-bottom:25px;
}
.contactTb th p,.contactTb td p {
	margin-bottom:0;
}
input[type=text], input[type=password], input[type=date], input[type=datetime], input[type=email], input[type=number], input[type=search], input[type=tel], input[type=time], input[type=url], textarea, select, .search-edit {
	border: 1px solid #CCC4AE;
	padding:16px 24px;
	margin-bottom: 5px;
}
::placeholder {
  color: #CCC4AE;
}
input[type="text"]:focus,input[type=password]:focus, input[type=date]:focus, input[type=datetime]:focus, input[type=email]:focus, input[type=number]:focus, input[type=search]:focus, input[type=tel]:focus, input[type=time]:focus, input[type=url]:focus, textarea:focus, select:focus, .search-edit:focus {
	outline:none;
	border: 2px solid #CCC4AE;
}
.wpcf7-checkbox {
	display:flex;
	gap:20px;
}
.wpcf7-list-item {
	margin:0;
}
input[type="checkbox"] {
	position: relative;
	width: 16px;
	height: 16px;
	border: 1px solid #CCC4AE;
	vertical-align: -2px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius:3px;
}

input[type="checkbox"]:checked:before {
	position: absolute;
	top: 1px;
	left: 4px;
	transform: rotate(50deg);
	width: 4px;
	height: 8px;
	border-right: 2px solid #CCC4AE;
	border-bottom: 2px solid #CCC4AE;
	content: '';
}

select {
    -webkit-appearance: none;
    appearance: none;
    background-image: url(./images/common/arrowNav02.svg);
    background-repeat: no-repeat;
    background-size: 16px auto; /* 画像のサイズ（幅 高さ）*/
    background-position: right 12px center; /* 画像の位置 */
}
.contactInterview {
	border-radius:40px;
	background-color: var(--common-orenge02-color);
	border: 1px solid  var(--common-red-color);
	padding:40px 0;
	display:flex;
	flex-direction:column;
	font-size:16px;
	color:var(--common-red-color);
	text-align:center;
	gap:24px;
	margin-top:60px;
	margin-bottom:40px;
}
.contactInterviewTitle {
	font-size:24px;
	font-weight:600;
}
.contactInterviewTel {
	font-size:36px;
	font-weight:600;
}
.contactInterviewTel a {
	text-decoration:none;
	color:var(--common-red-color);
}
.contactAchievements {
	font-size:14px;
}

.featuresMainIn {
	background-color: #fff;
    padding: 60px 0;
	box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.06);
    border-radius: 0 0 100px 100px;
	margin-bottom:60px;
}
.featuresConts {
	display:flex;
	gap:40px;
	margin-bottom:24px;
}
.featuresConts.f02 {
	flex-direction:row-reverse;
}
.featuresImg {
	width:420px;
}
.featuresImg img {
	border-radius: 20px;
}
.featuresTxt {
	width: calc(100% - 460px);
    font-size: 16px;
}
.featuresPoint {
	position: relative;
	color: var(--common-red-color);
    font-weight: bold;
    font-size: 20px;
	padding-left:100px;
	line-height:1.4;
	margin-bottom:10px;
}
.featuresPoint:after {
    content: '';
    display: inline-block;
    width: 90px;
    height: 51px;
    background-color: #fff;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 0;
    top: 4px;
}
.featuresPoint.point01:after {
    background-image: url(./images/common/point01.svg);
}
.featuresPoint.point02:after {
    background-image: url(./images/common/point02.svg);
}
.featuresPoint.point03:after {
    background-image: url(./images/common/point03.svg);
}
.featuresPoint.point04:after {
    background-image: url(./images/common/point04.svg);
}
.pageVoice {
    background-color: #F8F8F8;
    padding: 60px 0;
    text-align: center;
    font-size: 16px;
    margin-bottom: 0;
}
.pageVoice .slick__inner {
	width: min(100%, 960px);
	margin: 0 auto;
	padding: 0 20px;
}

.pageVoice .slick__container {
	position: relative;
	width: calc(100% + (100vw - 100%) / 2);
}

.voiceLists {
	padding: 0 0 0 60px;
}

.pageVoice .slick__prev,
.pageVoice .slick__next {
	display: block;
    width: 84px;
    height: 84px;
    background: var(--common-orenge02-color);
    border-radius: 50%;
    transition: all .3sease;
    cursor: pointer;
    position: relative;
    opacity: 0.85;
    filter: drop-shadow(0px 0 4px rgba(0, 0, 0, 0.15));
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    z-index: 1;
	border: none;
}

.pageVoice .slick__prev {
	display:none !important;
}

.pageVoice .slick__prev {
  /* (インナー幅の右端) + (画像のマージン + ボタンの大きさ + ボタンとの間隔) */
	left: 120px;
}

.pageVoice .slick__next {
  /* (インナー幅の右端) + (画像のマージン) */
	right: calc((100vw - 100%) - (40px));
}

.pageVoice .slick__prev:before,
.pageVoice .slick__next:before {
	position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    border-right: 2px solid var(--common-red-color);
    border-top: 2px solid var(--common-red-color);
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    transform: rotate(45deg);
}

.pageVoice .slick__prev:before {
	transform: rotate(-135deg);
}

.voiceList {
	position: relative;
	width: 352px;
	margin-right: 24px;
	box-sizing:border-box;
	padding:16px;
	background-color:#fff;
	font-size:14px;
	border-radius:20px;
}
.voiceListIn {
	display:flex;
	flex-direction:column;
	gap:10px;
}
.voiceListTitle {
	font-size:18px;
	font-weight:600;
	text-align:center;
	color: var(--common-red-color);
}
.modal-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	z-index: 999; /* 背景は低めの z-index */
}

.modal {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 90%;
	max-width: 600px;
	background: white;
	padding: 30px;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
	z-index: 1000; /* モーダル本体は背景より上 */
	font-size:14px;
	max-height: 80vh;
    overflow-y: auto;
}

.modal-content {
	position: relative;
}

.close {
	position: absolute;
	top: -10px;
	right: -10px;
	cursor: pointer;
	font-size:20px;
}

/* モーダルの背景 */
.modal-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	z-index: 999;
}

.featuresEvent {
	display:flex;
	flex-direction:column;
	gap:32px;
}
.featuresEventList {
	background-color:#fff;
	border-radius:40px;
	padding:32px;
	font-size:16px;
	text-align:center;
}
.featuresEventTitle {
	font-size:32px;
	font-weight:bold;
	color: var(--common-red-color);
	margin-bottom:30px;
}

/*blog*/
body.single .content-in,body.page-id-267 .content-in,body.archive .content-in {
	max-width: 1200px;
    width: 100%;
    margin: 40px auto;
	flex-wrap: nowrap;
	gap:40px;
	font-size:14px;
}
body.single .entry-title, body.single-blog .archive-title {
	margin:0 0 30px;
	text-align:left;
}
body.single .sidebar,body.page-id-267 .sidebar,body.archive .sidebar {
	padding:0;
}
body.single .sidebar h2, body.single .sidebar h3,body.page-id-267 .sidebar h2, body.page-id-267 .sidebar h3,body.archive .sidebar h2, body.archive .sidebar h3 {
	background-color:transparent;
	padding:0 0 5px;
	border-bottom:2px solid var(--common-red-color);
	margin:0 0 10px;
	font-size:18px;
}
body.single .entry-content,body.page-id-267 .entry-content,body.archive .entry-content {
	margin-bottom:80px;
}
.cat-link {
	background-color:#ccc;
}
.tagcloud a {
	border:none;
	font-size: 14px;
	flex:none;
}
.breadcrumb {
	display: flex;
    flex-wrap: wrap;
}
.breadcrumb .sp {
	display: inline-block;
}


/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1200px以下*/
@media screen and (max-width: 1200px){
  /*必要ならばここにコードを書く*/
	.headerMainInner {
		padding:20px 16px;
		height:60px;
	}
}

/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
	.wrap {
		padding-left:16px;
		padding-right:16px;
	}
	.wrap02 {
		padding-left:16px;
		padding-right:16px;
	}
	.wrap03 {
		padding-left:16px;
		padding-right:16px;
	}
	.topActivity .prev-arrow {
	   left: calc(50% - 300px);
	}
	.topActivity .next-arrow {
		left: calc(50% + 250px);
	}
	.topBnr01 {
		padding-left:16px;
		padding-right:16px;
	}
	.topBnr02 {
		padding-left:16px;
		padding-right:16px;
	}
	.mainV {
		background-size:cover;
	}
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
	main.main, div.sidebar {
		padding:0;
	}
	
	.pc {
		display:none;
	}
	.sp {
		display:block;
	}
	
	.btnOrenge {
		margin-top:50px;
		font-size:16px;
		height: 64px;
		border-radius: 32px;
		width:100%;
		line-height:1.2;
	}
	.mianVinner .btnOrenge {
		margin-top:20px;
	}
	.btnRed.big {
		font-size: 14px;
	}
	.btnBrown.big {
		height: 54px;
		border-radius: 27px;
		padding: 17px 20px;
		font-size: 14px;
		max-width: 234px;
	}
	.btnBrown.big.en {
		max-width:100%;
	}
	.btnBrown.big span:after {
		width: 20px;
		height: 19px;
		right: -30px;
	}
	.btnBrown.wide {
		max-width:100%;
	}
	h1 {
		font-size:28px;
	}
	.h1SubTitle {
		font-size: 18px;
	}
	.h1SubTitleEn {
		font-size:28px;
	}
	h2 {
		font-size:24px;
	}
	.article h2 {
		font-size:22px;
		padding: 0;
	}
	.article h2.qaH2,.article h2.aboutH2 {
		font-size:20px;
		padding: 8px 20px;
		margin-bottom: 26px;
	}
	.article h2.featureH2 {
		font-size:28px;
	}
	h2.contactH2 {
		margin-bottom:30px !important;
	}
	h3 {
		font-size:18px;
		margin-bottom:16px;
	}
	h3.courseTitle {
		font-size:20px;
	}
	.courseTitleSub {
		font-size:14px;
	}
	
	.headerMainInner {
		padding:10px 16px;
		height:60px;
		justify-content:space-between;
	}
	.headerMain {
		justify-content:center;
	}
	.headerLogo {
		width:107px;
	}
	.headerBtnList {
		display:none;
	}
	.headerBtnSp {
		display:block;
	}
	.headerNavMenu {
		display:block;
	}
	.headerNav.headerNav01 {
		position:absolute;
	}
	.headerNav.headerNav01 {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 1;
		width: 100vw;
		height: 100vh;
		transform: translateY(100vh);
		transition: all .3s linear;
		background-color:#fff;
		padding-bottom:60px;
		box-sizing:border-box;
		overflow:auto;
	}
	.headerNav.headerNav01.active{
		transform: translateY(0);
	}
	.headaerNavInner {
		padding:0 32px;
	}
	.headaerNavInner ul {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	.headaerNavInner ul li {
		width: 100%;
		height: auto;
		text-align: left;
		box-sizing: border-box;
		border-bottom:1px solid var(--common-orenge02-color);
	}
	.headaerNavInner ul li a, .headaerNavInner ul li span {
		color: var(--common-red-color);
		font-weight:bold;
		justify-content:flex-start;
	}
	.headaerNavInner ul li a:hover, .headaerNavInner ul li span:hover {
		border-bottom:none;
	}
	.headaerNavInner ul .headerNavSub {
		display:none;
		position: static;
		width:100%;
		transform:none !important;
	}
	.headaerNavInner ul .headerNavSub.active {
		display:block;
	}
	.headaerNavInner ul .headerNavSub li {
		width:100%;
		text-align: center;
		border-bottom:none;
	}
	.headaerNavInner ul .headerNavSub li a {
		justify-content: flex-start;
        padding: 0 20px;
		height:40px;
		font-weight:400;
	}
	.headaerNavInner ul .headerNavSub li a:before {
		left:0;
	}
	.headaerNavInner ul .headerNavSub li a:after {
		content:none;
	}
	.headaerNavInner ul li.about .aboutMore span {
		width:100%;
	}
	.headaerNavInner ul li.about .aboutMore span:after {
		background-image: url(./images/common/add.svg);
	}
	.headaerNavInner ul li.about .aboutMore:hover span:after {
		background-image: url(./images/common/remove.svg);
	}
	.headaerNavSpBtn {
		display:flex;
		flex-direction:column;
		gap:20px;
		margin-top:24px;
		padding:0 15px;
		margin-bottom:20px;
	}
	.breadcrumb.sbp-main-before, .breadcrumb.sbp-footer-before, .breadcrumb.pbp-main-before, .breadcrumb.pbp-footer-before {
		margin-left: 16px;
        margin-right: 16px;
		width: calc(100% - 32px);
	}
	.footer {
		padding:20px 0 0;
	}
	.footerWrap {
		flex-wrap:wrap;
		gap:24px;
	}
	.footerMenu {
		flex-wrap: wrap;
		width: 100%;
		gap:0;
	}
	.footerMenu > div {
		width:100%;
		border-bottom:1px solid #e0e0e0;
		padding-bottom:15px;
	}
	.footerAddress {
		width:100%;
	}
	.footerMenuTitle {
		font-weight:bold;
		margin:0;
		padding-top:15px;
		position:relative;
	}
	.footerMenuTitle span {
		border-radius:50%;
		border:2px solid #333;
		width:20px;
		height:20px;
		display:inline-block;
		position:absolute;
		right:0;
		top:20px;
	}
	.footerMenuTitle span::before,
	.footerMenuTitle span::after {
		content: '';
		display: block;
		width: 12px;
		height: 2px;
		border-radius: 5px;
		background: #333;
		position: absolute;
		right: 2px;
		top: 50%;
		transform: translateY(-50%);
	}
	.footerMenuTitle span::after {
		background: #333;
		transform: translateY(-50%) rotate(90deg);
		transition: 0.5s;
	}
	.footerMenuTitle .active::after {
		transform: rotate(0);
		transition: 0.5s;
		margin-top: -1px;
	}
	.footerMenuList {
		display:none;
	}
	.footerInstaArea {
		padding:24px 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.footerCopy {
		padding:0 0 60px;
	}
	
	.spFooterMenu {
		display:block;
		position:fixed;
		bottom:0;
		left:0;
		background:rgb(239,236,228,0.8);
		padding:10px 0;
		z-index: 10;
		width:100%;
	}
	.spFooterMenuList {
		display:flex;
		gap:10px;
		margin:0;
		padding:0;
	}
	.spFooterMenuList li {
		width:calc((100% - 30px) / 4);
		list-style:none;
	}
	.spFooterMenuList li a {
		display:flex;
		flex-direction:column;
		background-color:var(--common-red-color);
		border-radius:5px;
		color:#fff;
		font-size:9px;
		font-weight:600;
		text-decoration:none;
		align-items: center;
		height: 100%;
	}
	.spFooterMenuList li a:hover {
		transform:none;
	}
	.spFooterMenuList li a .icon {
		width:20px;
	}
	.spFooterMenuTxt {
		margin-top:auto;
	}
	.spFooterMenuList li a .icon.active {
		display:none;
	}
	
	.mainV {
		height: 630px;
		background-image: url(./images/top/top01syugou_sp.jpg);
	}
	.mianVinner {
		width:100%;
		box-sizing:border-box;
		padding:0 16px;
		top:8%;
	}
	.mianVsubTitle {
		font-size: 18px;
	}
	.mianVmainTitle {
		font-size: 21px;
	}
	.mianVsubTitle {
		font-size:12px;
	}
	
	.topIntroInner {
		padding:40px 16px;
		font-size:14px;
	}
	.titleDeco {
		padding:0 60px;
	}
	.titleDeco:before, .titleDeco:after {
		top:60%;
	}
	.topIntroImg {
		max-width:300px;
	}
	
	.topFeaturesInner {
		padding:40px 0;
		font-size:14px;
	}
	.pointList {
		gap:32px 15px;
		margin:40px 0 60px;
	}
	.pointListIn {
		width:calc((100% - 15px) / 2);
	}
	.pointListTitle {
		font-size:18px;
	}
	.pointListText {
		position: relative;
		height: 72px;
		overflow: hidden;
	}
	.pointListText.active {
	  height: auto;
	}
	.pointListText::before {
	  content: ""; 
	  width: 100%;
	  height: 100%;
	  display: block;
	  background: linear-gradient(rgba(255, 255, 255, 0) 0, #fff 90%);
	  position: absolute;
	  top: 0;
	  left: 0;
	}
	.pointListText.active::before {
	  background: none;
	}
	.scroll-infinity__list {
		padding: 0 6px 0 0;
		gap: 6px;
	}
	.scroll-infinity__item {
		width: 150px;
	}
	
	.topCourseInner {
		padding:40px 16px;
		font-size: 14px;
	}
	.stepTitle {
		font-size:14px;
		padding: 24px 0 10px 110px;
		text-align: left;
		display: block;
		line-height: 1.4;
	}
	.stepTitle:after {
		width:100px;
		bottom: -15px;
	}
	.stepConts {
		margin-bottom:20px;
	}
	.stepContsIn {
		border-radius:10px;
		padding: 18px 16px;
		text-align:left;
	}
	.stepCourseList.stepCourse03 .stepContsIn {
		width:100%;
	}
	.stepContsIn.mb32 {
		margin-bottom:16px;
	}
	.stepContsCaption {
		font-size:16px;
		display:inline;
	}
	.stepCourse {
		margin-top:20px;
		border-radius:20px;
		padding:16px 12px;
	}
	.stepCourse p {
		margin-bottom:16px;
	}
	.stepCourseList {
		gap:16px;
		flex-wrap:wrap;
		margin-top: 16px;
	}
	.stepCourseList .stepCourse {
		margin-top:0;
		width:100%;
		padding-top: 16px;
		text-align:left;
	}
	.stepSubCourseTitle {
		width:100%;
		margin-left:0;
		margin-bottom:16px;
		line-height:1.4;
		text-align:left;
	}
	.stepSubCourseTitle > .icon {
		width:78px;
	}
	.stepContsIn p {
		margin-bottom:16px;
	}
	
	.topAccessInner {
		padding:40px 16px;
		font-size:14px;
	}
	
	.schoolList {
		margin:24px 0;
	}
	.schoolList {
		flex-wrap:wrap;
	}
	.schoolListIn {
		width:100%;
		display:flex;
		gap:16px;
		font-size:12px;
	}
	.schoolListImg {
		margin-bottom:0;
		width:100px;
	}
	.schoolInfo {
		flex:1;
	}
	.schoolListTitle {
		font-size:16px;
		text-align:left;
	}
	
	.topActivityInner {
		padding:40px 0;
	}
	.topActivity .prev-arrow {
		left:-25px;
	}
	.topActivity .next-arrow {
		left: auto;
        right: -25px;
	}
	.topActivity .prev-arrow::before, .topActivity .next-arrow::before {
		left:-22px;
	}
	.topActivityName {
		font-size:16px;
		text-align:center;
	}
	.topActivityIn {
		font-size:12px;
	}
	.topArtistInner {
		padding:40px 16px;
		font-size:14px;
		text-align:center;
	}
	.topArtistList {
		margin-top:20px;
	}
	.topArtist .prev-arrow {
		left:-40px;
	}
	.topArtist .next-arrow {
		right: -40px;
	}
	.topArtist .prev-arrow::before, .topArtist .next-arrow::before {
		left:-22px;
	}
	.topNews {
		background-color:#fff;
	}
	.topNewsList {
		margin:20px 0;
	}
	.topNewsIn {
		padding: 15px 20px 15px 0;
		line-height: 1.6;
	}
	.topNewsDate, .topNewsCat {
		font-size:12px;
	}
	.topNewsIn {
		font-size:14px;
	}
	.topBnrAreaInner {
		background-color: #F8F8F8;
		padding:40px 0;
	}
	.topBnr01 {
		flex-wrap:wrap;
		gap:16px;
		margin-bottom:16px;
	}
	.topBnrIn, .topBnrIn02 {
		width: calc((100% - 16px) / 2);
		font-size:16px;
	}
	.topBnr02 {
		flex-wrap:wrap;
		gap:16px;
	}
	.topBnrIn03 {
		width:100%;
	}
	
	.pageMainTitle {
		padding:40px 0;
	}
	.pageMainTitle.noSub {
		padding:55px 0;
	}
	.pageMainIn {
		padding: 40px 0 0;
		border-radius: 20px 20px 0 0;
	}
	.pageMainIn.pb {
		padding-bottom:10px;
	}
	.pageCourseIntroTitle {
		font-size:20px;
		margin-bottom:30px;
	}
	.pageCourseIntroTitle .sub {
		font-size:14px;
	}
	.pageCourseSlider {
		margin-top:0;
	}
	.pageCourseSlider .slick-slide {
		width:280px;
	}
	.pageCourseFlex {
		display:flex;
		flex-direction:column-reverse;
	}
	.pageCourseIntro {
		font-size:14px;
	}
	.pointListIn.point03 {
		width:100%;
	}
	.pageCourseMessage {
		font-size:14px;
	}
	.pageCourseClass {
		padding:40px 0;
		margin-bottom:0;
	}
	.pageCourseClassAboutIn {
		margin-bottom: 0;
		margin-top: 16px;
	}
	.pageCourseClassIn {
		gap:20px;
		flex-direction:column;
	}
	.pageCourseClassImg {
		width:100%;
	}
	.pageCourseClassInfo {
		font-size:14px;
		gap: 10px;
	}
	.pageCourseClassTitle {
		font-size:18px;
	}
	.pageCourseSeason {
		padding:40px 0;
		font-size:14px;
		margin-bottom:0;
	}
	.tabContentArea {
		padding: 0;
	}
	.seasonTabContainer {
		gap:5px;
		margin-bottom:0;
	}
	.seasonTabContainer .tab {
		width: calc((100% - 10px) / 3);
		padding: 10px 3px;
		font-size:12px;
		line-height:1.4;
	}
	.seasonContentContainer {
		padding:16px;
	}
	.seasonContentContainer .content.show {
		font-size:12px;
		gap: 16px;
	}
	.seasonContentContainer .content.spWrap {
		flex-wrap:wrap;
	}
	.seasonContentContainer .content.spWrap > div {
		width: 100%;
	}
	.seasonContentContainer .content.spWrap > div .seasonContentList {
		border:none;
	}
	.seasonContentContainer .content.spWrap > div .seasonContentList02 {
		justify-content: flex-start;
	}
	.seasonContentTitle {
		font-size:14px;
	}
	.seasonContentList {
		padding-right: 8px;
	}
	.pageCourseClassAboutTitle {
		font-size:18px;
	}
	.pageCourseClassAboutConts {
		padding:16px;
	}
	.pageCourseClassAboutConts table.nb th, .pageCourseClassAboutConts table.nb td, .pageCourseClassAboutConts table.nb tr {
		font-size:12px;
	}
	.pageCourseClassAboutConts ul {
		font-size:12px;
		margin-bottom: 0;
	}
	.pageCourseClassAboutConts table.bd {
		margin-bottom:0;
	}
	.pageCourseClassAboutConts table.bd th,.pageCourseClassAboutConts table.bd td {
		font-size:12px;
	}
	.scrollable-table .details th, .scrollable-table .details td {
		white-space: nowrap;
	}
	.pageCourseSche {
		padding:40px 0 0;
		margin-bottom:0;
		font-size:14px;
	}
	.pageCourseScheIn {
		width:100%;
	}
	.pageCourseScheTitle {
		padding: 10px;
		font-size: 12px;
	}
	.pageCourseScheConts {
		font-size:12px;
	}
	.pageCourseScheConts dl dt {
		width:25%;
	}
	.pageCourseScheConts dl dd {
		width: calc(75% - 15px);
	}
	.pageCourseScheTb td {
		font-size:12px;
	}
	
	.pageSchoolIn {
		flex-direction:column;
		gap:24px;
	}
	.pageSchoolIn02 {
		flex-direction:column;
		gap:24px;
	}
	.pageSchoolImg {
		width:100%;
	}
	.pageSchoolImg02 {
		width:100%;
	}
	.pageSchoolConts {
		width:100%;
		font-size:14px;
	}
	.pageSchoolConts02 {
		width:100%;
		font-size:14px;
	}
	.pageSchoolAccessTransTitle {
		font-size:18px;
		margin-bottom: 0;
	}
	.pageSchoolAccessInfo {
		font-size:14px;
		text-align: left;
	}
	.pageSchoolAccessTel {
		font-size:14px;
	}
	.pageSchoolAccessTel span:nth-child(1) {
		font-size:14px;
	}
	.pageSchoolAccessTel span:nth-child(2) {
		font-size:20px;
	}
	.pageSchoolAccessTrans {
		font-size:14px;
		padding:16px;
		gap:16px;
	}
	.pageQaBtnList ul li a {
		font-size:14px;
		padding: 10px 10px 10px 38px;
        height: 100%;
		display: flex;
        align-items: center;
        line-height: 1.4;
		border-radius:5px;
	}
	.pageQaBtnList ul li a:before {
		left:10px;
	}
	.pageQaList dt {
		padding: 16px 46px 16px 40px;
		font-size: 14px;
	}
	.pageQaList dt:before {
		left:16px;
	}
	.pageQaList dt span {
		right:16px;
	}
	.pageQaList dd {
		padding: 16px 46px 16px 40px;
		font-size: 14px;
	}
	.pageQaList dd:before {
		left:16px;
	}
	.pageFlow dt {
		flex-direction: column;
	}
	.pageFlow dt .step {
		height:32px;
		width:88px;
		font-size:16px;
	}
	.pageFlow dt span {
		top:44px;
	}
	.stepFlex {
		flex-direction:column;
	}
	.stepFlex .img {
		width:100%;
	}
	.pageQa {
		padding-top:0;
	}
	.companyP {
		font-size:14px;
		margin-bottom:50px !important;
	}
	.companyP02 {
		font-size:14px;
		margin-bottom:25px !important;
	}
	.contactTb {
		margin-bottom:0 !important;
	}
	.contactBtnList {
		flex-wrap:wrap;
	}
	.contactBtn {
		width:100%;
		border-radius:10px;
	}
	.wpcf7-checkbox {
		gap: 0px 20px;
		flex-wrap: wrap;
	}
	.contactInterview {
		padding:24px 16px;
		margin-top:40px;
		font-size:14px;
		gap:16px;
	}
	.contactInterviewTitle {
		font-size:20px;
	}
	.featuresMainConts {
		background-color:#F8F8F8;
	}
	.featuresMainIn {
		margin-bottom:0;
		padding-bottom:40px;
		border-radius:0 0 60px 60px;
	}
	.featuresConts {
		flex-wrap:wrap;
		flex-direction:column;
		gap: 20px;
		margin-bottom: 40px;
	}
	.featuresImg {
		width:100%;
	}
	.featuresTxt {
		width:100%;
		font-size:14px;
		position: relative;
        border: 2px dashed var(--common-pink-color);
        border-radius: 10px;
        padding: 40px 15px 20px;
		margin-top:20px;
	}
	.featuresPoint {
		font-size: 20px;
		padding-left: 0;
        text-align: center;
	}
	.featuresPoint:after {
		top: -55px;
        left: -20px;
	}
	.voiceLists {
		padding:0;
	}
	.voiceList {
		width:300px;
		text-align: left;
	}
	.voiceListTitle {
		font-size: 16px;
		line-height: 1.4;
	}
	.pageVoice .slick__prev, .pageVoice .slick__next {
		width:50px;
		height:50px;
		display:none !important;
	}
	.pageVoice .slick__next {
		right:0;
	}
	.featuresEventTitle {
		font-size:20px;
		margin-bottom:16px;
		text-align:center;
	}
	.featuresEventList {
		font-size:14px;
		padding:24px 16px;
		text-align: left;
	}
	body.single .content-in {
		margin: 15px auto;
	}
	body.single .entry-title, body.single-blog .archive-title {
		margin-bottom:20px;
	}
	body.single .entry-content {
		padding-left: 16px;
        padding-right: 16px;
		margin-bottom:40px;
	}
	body.single .sidebar {
		padding-left: 16px;
        padding-right: 16px;
		margin-top:40px;
	}
	.breadcrumb {
		margin: 1em 16px;
	}
	.entry-title, .article h2 {
		padding-left: 0;
        padding-right: 0;
	}
	.article-header,.article-footer {
		padding-left: 16px;
        padding-right: 16px;
	}
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
