@charset "UTF-8";

/* common /////////////////////////////////////////////////////////////////////////////////////////// */
.pcNone {
	display:none;
}

.font_hannari {
    font-family: "A1明朝", "A1 Mincho";
}

.font_rei {
    font-family: "隷書101", "Reisho 101";
}

.font_min {
	font-family: 游明朝,"リュウミン M-KL","Ryumin Medium KL","Yu Mincho",YuMincho,Georgia,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}

.cmn_box_1100 {
	width:1100px; margin: 0 auto;
}

.cmn_box_1000 {
	width:1000px; margin: 0 auto;
}

.cmn_box_900 {
	width:900px; margin: 0 auto;
}

.cmn_wrap_min1100 {
	min-width: 1100px;
}

.cmn_tate {
	margin: 0 auto 120px auto;
	text-align: center;
}

.cmn_tate .txt_spNone {
	display: inline-block;
}

.cmn_tate .txt_pcNone {
	display: none;
}

.cmn_tate p {
	display: inline-block;
	color: #062B49; font-size: 1.8rem; font-size: 1.7rem;
	letter-spacing: 0.4rem; line-height: 250%;
	text-align: justify;
	text-justify: inter-ideograph;

	/*font-feature-settings: "vpal";
	-webkit-font-feature-settings: "vpal";
	-moz-font-feature-settings: "vpal";
	-ms-font-feature-settings: "vpal";*/

	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	-o-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;

	/*font-family: 游明朝,"Yu Mincho",YuMincho,Georgia,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;*/
	font-family: 游明朝,"リュウミン M-KL","Ryumin Medium KL","Yu Mincho",YuMincho,Georgia,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;

}

.cmn_title {
	width: 66px; margin: 0 auto 50px auto;
	background: url("../img/cmn_tit_bg_top.svg") no-repeat center top / 66px,
				url("../img/cmn_tit_bg_btm.svg") no-repeat center bottom/ 66px;
	text-align: center;
}

.cmn_title div {
	display: inline-block;
	padding: 50px 0 10px 0;
	color: #062B49; font-size: 2.4rem; font-weight: bold; letter-spacing: 0.4rem;

	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	-o-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;

}

.cmn_title a {
	display: block;
	width: 100%;
}

.sub_mainimg {
	height: 0; padding: 36% 0 0 0; margin: 0 0 120px 0;
	background-image: url("../img/about_mainimg_sp.jpg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.sub_msg h2 {
	margin: 0 0 100px 0;
	text-align: center;
}

.sub_access {
	padding: 120px 0;
	background: #F7F8F8;
}

.sub_access section > div {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 400px;
    overflow: hidden;
    margin: 0 0 50px 0;
}

.sub_access section > div iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.sub_access dl {
	display: flex;
	justify-content: space-between;
	color: #062B49;
}

.sub_access dt {
	flex-shrink: 0;
	width: 392px; padding: 0 16px 0 0;
}

.sub_access dt h3 {
	margin: -4px 0 12px 0;
	font-size: 2.0rem; font-weight: bold;
}

.sub_access dt li {
	display: flex;
	align-items: flex-start;
}

.sub_access dt p {
	flex-shrink: 0;
}

.sub_access dd {
	padding: 0 0 0 30px; border-left: 2px solid #062B49;
}

.sub_access dd p {
	margin: -8px 0 0 0;
	text-align: justify;
}

.sub_access dd span {
	display: block;
	margin: 30px 0 0 0;
	font-size: 1.3rem;
	line-height: 1.95;
}

.sub_eyecatch {
	position: relative;
	height: 0;
	/* padding: 36% 0 0 0; */
	padding: clamp(320px,36%,500px) 0 0 0;
	margin: 0 0 120px 0;
	background-image: url("../img/about_toyokawaden_mainimg.jpg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.sub_eyecatch p {
	position: absolute;
	top: 0; left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%; height: 100%;
	color: #FFF; font-weight: bold;

	/*font-size: 2.8vw;
	letter-spacing: 0.8rem;
	letter-spacing: 0.8vw;*/

	font-size: 3.4rem;
	letter-spacing: 0.2rem;

	text-shadow: 0 0 7px rgba(67, 20, 9, 0.4);

	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	-o-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;

}





/*//////////////////////////////////////////////////////////////*/
.header_fix {
	position: fixed;
	top: 0;
	z-index: 9999;
	width: 100%; height: 120px;
	background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(255,255,255,0.8) 50%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
}

.header_inner {
	display: flex;
	height: 60px;
}

.header_fix .header_logo02,
.header_fix .header_logo02_sp,
.header_fix .sub_header_logo02,
.header_fix .sub_header_logo02_sp {
	display: flex;
	justify-content: center; align-items: center;
	flex-shrink: 0;
	width: 150px; margin: 8px 30px 0 0;
}

.header_logo02 img,
.header_logo02_sp img,
.sub_header_logo02 img,
.sub_header_logo02_sp img {
	width: 64px;
}

.header_logo02 img {
	display: none;
}

.header_gnav {
	align-self: flex-end;
	width: 700px;
}

.header_gnav ul {
	display: flex;
	justify-content: space-between;
}

.header_gnav li {
	height: 45px;
	line-height: 45px;
}

.header_gnav li a {
	display: block;
	padding: 0 10px;
}

.header_gnav li a {
	display: block;
	padding: 0 10px;
}

.header_gnav li a:hover {
	background: url("../img/header_gnav_bg.svg") no-repeat center / auto 100%;
}

.header_gnav li a {
	font-size: 1.4rem; font-weight: bold;
}

.header_ec {
	flex-shrink: 0;
	align-self: flex-end;
	width: 160px; height: 40px;
	border-radius: 0.5rem;
	margin: 0 0 0 auto;
	background: linear-gradient(to bottom, rgba(6,43,73,0.8) 0%,rgba(35,24,21,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cc062b49', endColorstr='#231815',GradientType=0 ); /* IE6-9 */
}

.header_ec a {
	display: block;
	height: 100%;
	color: #FFF; font-size: 1.4rem; font-weight: bold; letter-spacing: 0rem; line-height: 38px;
	text-align: center;
}

.header_ec:hover {
	background: #062B49;
}

.header_spmenu {
	display: none;
}

.header_nofix {
	position: relative;
}

.header_nofix .header_logo01 {
	position: absolute;
	top: -1px; left: 0;
	z-index: 9999;
	width: 150px;
}

footer {
	width: 100%; padding: 20px 0 0 0;
	background: #062B49;
	color: #FFF;
}

footer a {
	color: #FFF;
}

.footer_inner {
	width: 200px; padding: 0 0 40px 0; margin: 0 auto;
}

.footer_company {
	display: block;
	margin: 0 0 44px 0;
	font-size: 1.2rem;
	text-align: center;
}

.footer_inner address {
	font-size: 1.7rem; font-style: normal; letter-spacing: 0.3rem; line-height: 140%;
	text-align: center;
	font-family: "ナウ-GM","NOW-GM";
}

.footer_tel {
	display: block;
	margin: 0 0 8px 0;
	font-size: 2.6rem; letter-spacing: 0rem;
	pointer-events: none;
}

.footer_contact {
	display: block;
	padding: 4px 0 4px 16px; border: 1px solid #FFF; border-radius: 0.5rem; margin: 8px 0 10px 0;
	font-size: 1.4rem;
	text-align: center;
	background: url("../img/footer_ico_contact_off.svg") no-repeat left 52px center / 20px;
}

.footer_contact:hover {
	color: #062B49;
	background: #FFF url("../img/footer_ico_contact_on.svg") no-repeat left 52px center / 20px;
}

.footer_bnr_gekusando {
	display: inline-block;
	margin: 0 0 10px 0;
}

.footer_bnr_gekusando:hover {
	opacity: 0.8;
	transition: 0.2s ease-in-out;
}

.footer_bnr_gekusando img {
	width: 100%;
	border-radius: 0.5rem;
}

footer small {
	display: block;
	height: 50px;
	font-size: 1.4rem; line-height: 50px;
	background: #2D1C04;
	text-align: center;
}

.cmn_gotop a {
    position: fixed;
    z-index: 999;
    bottom: 50px; right: 0;
    display: block;
    width: 50px; height: 50px;
    background: rgba(6, 43, 73, 0.7) url("../img/cmn_ico_gotop.svg") no-repeat center / 30px auto;
    outline: none;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}


/* home /////////////////////////////////////////////////////////////////////////////////////////// */

/* swiper調整 */
.home_mainimg_pc {
	width: 100% !important;
	margin: 0 0 120px 0 !important;
}

.swiper-slide:nth-of-type(2n+1) {
	transition-timing-function: cubic-bezier(0.550, 0.000, 1.000, 1.000) !important;
}

.swiper-slide:nth-of-type(2n) {
	transition-timing-function: cubic-bezier(0.000, 0.000, 0.000, 1.000) !important;
}

.home_mainimg_pc img {
	width: 100% !important;
}

.home_mainimg_sp {
	display: none !important;
}
/* /swiper調整 */

.home_msg > div {
	background: url("../img/home_msg_bg.png") no-repeat center / 92% auto;
}

.home_pnav ul {
	display: flex;
	width: 100%;
}

.home_pnav li {
	width: 25%;
}

.home_pnav li a {
	position: relative;
	z-index: 99;
	display: block;
	width: 100%; height: 0; padding-top: 100%;
	background-image: url("../img/home_pnav_shinwauranai.jpg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100% auto;
    outline: none;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}

.home_pnav li:nth-of-type(2) a {
	background-image: url("../img/home_pnav_item.jpg");
}

.home_pnav li:nth-of-type(3) a {
	background-image: url("../img/home_pnav_gekumiyage.jpg");
}

.home_pnav li:nth-of-type(4) a {
	background-image: url("../img/home_pnav_sakka.jpg");
}

.home_pnav li a h2 {
	display: none;
}

.home_pnav li a:hover h2 {
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #FFF; font-size: 3.0rem; font-size: 2.2vw; font-weight: bold; letter-spacing: 0.4rem;
	text-shadow: 0px 0px 7px rgba(35, 24, 21, 0.7);
	background: rgba(6, 43, 73, 0.6);
}

.home_news {
	padding: 120px 0;
	background: #FBFAF8
}

.home_news li {
	border-top: 1px solid #062B49;
	border-bottom: 1px solid #062B49;
	margin: -1px 0 0 0;
}

.home_news li a {
	display: block;
	padding: 12px 20px 12px 0;
	background: url("../img/home_news_arrow.svg") no-repeat right 4px center;
}

.home_news li div {
	display: flex;
	justify-content: space-between;
	overflow: hidden;
}

.home_news li span {
	flex-shrink: 0;
	display: block;
	width: 100px; margin: 0 40px 0 0;
	color: #062B49; font-size: 1.6rem;
}

.home_news li p {
	width: 100%;
	color: #062B49; font-size: 1.6rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.home_spmovie a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100px;
	color: #FFFFFF;
	font-size: 2.4rem;
	letter-spacing: 0.4rem;
	line-height: 1.4;
	font-weight: 700;
	text-align: center;
	background-image: url(../img/home_spmovie_pic.jpg);
	background-repeat: no-repeat;
	background-position: right top;
	background-size: cover;
}



/* about /////////////////////////////////////////////////////////////////////////////////////////// */
.about_mainimg {
	background-image: url("../img/about_mainimg_sp.jpg");
}

.about_msg img {
	width: 60px;
}

.about_msg2_img{
	padding: 133px 0;
	margin-bottom: 120px;
}

.about_msg2_img .content{
	width: 100%;
	height: 200px;

	background-color: #062b49;
	background-image: url(../img/about_msg2_img_bg.png);
	background-repeat: no-repeat;
	background-size: auto 200px;
	background-position: center;

	position: relative;
}

.about_msg2_img .content > div{
	width: 560px;
	height: 230px;
	margin: 0;

	position: absolute;

	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

.about_msg2_img .content  > div:nth-of-type(1){
	background-image: url(../img/about_msg2_img_01.jpg);
	bottom: -133px;
	right: calc(50% - 60px);
}

.about_msg2_img .content  > div:nth-of-type(2){
	background-image: url(../img/about_msg2_img_02.jpg);
	top: -133px;
	left: calc(50% - 60px);
}

.about_toyokawaden {
	background: #F8F5F1;
}

.about_toyokawaden .cmn_tate {
	margin: 0 auto 100px auto;
}

.about_toyokawaden ul {
	display: flex;
	justify-content: space-between;
	padding: 0 0 120px 0;
}

.about_toyokawaden li {
	width: 33%;
}

/* kanechika /////////////////////////////////////////////////////////////////////////////////////////// */
.kanechika_mainimg {
	background-image: url("../img/kanechika_mainimg_sp.jpg");
}

.kanechika_msg h2 img {
	width: 220px;
}

.kanechika_netsuke h2 {
	background-image: url("../img/kanechika_netsuke_mainimg.jpg")
}

.kanechika_netsuke_course {
	margin: 0 auto 50px auto;
}

.kanechika_netsuke_course > dl {
	display: flex;
	justify-content: space-between;
	padding: 50px 50px 42px 50px; border: 1px solid #062B49; border-radius: 0.5rem;
}

.kanechika_netsuke_course > dl:first-of-type {
	margin: 0 0 50px 0;
}

.kanechika_netsuke_course > dl dt {
	flex-shrink: 0;
	display: flex;
	justify-content: space-between;
	width: 340px; margin: 0 30px 0 0;
}

.kanechika_netsuke_course h4 {
	flex-shrink: 0;
	width: 64px; margin: 0 16px 0 0;
	text-align: center;
}

.kanechika_netsuke_course h4 div {
	display: inline-block;
	margin: 14px 3px 0 0;
	color: #062B49; font-size: 3.9rem;
	letter-spacing: 0.4rem;

	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	-o-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
}

.kanechika_netsuke_course .course_imgbox {
	width: 100%;
}

.kanechika_netsuke_course .course_imgbox img:first-of-type {
	display: block;
	margin: 0 0 10px 0;
}

.kanechika_netsuke_course > dl dd {
	width: 100%;
}

.kanechika_netsuke_course > dl dd p {
	margin: -4px 0 16px 0;
	font-size: 2.4rem;
}

.kanechika_netsuke_course > dl dl {
	display: flex;
	flex-wrap: wrap;
	text-align: justify;
	text-justify: inter-ideograph;
	letter-spacing: 0rem;
}

.kanechika_netsuke_course > dl dl dt {
	width: 116px; margin: 0 10px 0 0;
}

.kanechika_netsuke_course > dl dl dd {
	width: calc(100% - 116px - 10px);
}

.kanechika_netsuke_course > p {
	margin: 16px 0 0 0;
	font-size: 1.4rem;
	text-align: justify;
	text-justify: inter-ideograph;
}

.kanechika_netsuke_teacher {
	margin: 0 auto 120px auto;
}

.kanechika_netsuke_teacher dl {
	display: flex;
	justify-content: space-between;
	padding: 50px 0;
	border-top: 2px solid #062B49;
	border-bottom: 2px solid #062B49;
	margin: 0 0 50px 0;
}

.kanechika_netsuke_teacher dt {
	flex-shrink: 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	width: 35%; min-width: 280px; margin: 0 20px 0 0;
}

.kanechika_netsuke_teacher dt img {
	flex-shrink: 0;
	width: 70%;
}

.kanechika_netsuke_teacher h4 {
	width: 100%;
	text-align: center;
}

.kanechika_netsuke_teacher h4 div {
	display: inline-block;
	color: #062B49; font-size: 3.0rem;
	text-align: left;

	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	-o-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
}

.kanechika_netsuke_teacher h4 span {
	display: block;
	font-size: 1.3rem;
}

.kanechika_netsuke_teacher dd {
	width: 100%; margin: -6px 0 0 0;
}

.kanechika_netsuke_teacher dd ul {
	margin: 28px 0 0 0;
}

.kanechika_netsuke_teacher dd li {
	display: flex;
}

.kanechika_netsuke_teacher dd li p {
	flex-shrink: 0;
	width: 80px;
}

.kanechika_event_contact{
	width: 220px; margin: 0 auto;
}

.kanechika_netsuke_teacher_contact {
	width: 200px; margin: 0 auto;
}

.kanechika_event_contact p,
.kanechika_netsuke_teacher_contact p {
	margin: 0 0 10px 0;
	font-size: 1.4rem;
	text-align: center;
}

.kanechika_event_contact address,
.kanechika_netsuke_teacher_contact address {
	font-size: 1.7rem; font-style: normal; letter-spacing: 0.3rem; font-weight: bold; line-height: 140%;
	text-align: center;
	font-family: "ナウ-GM","NOW-GM";
}

.kanechika_event_contact .tel,
.kanechika_netsuke_teacher_contact .tel {
	display: block;
	margin: 0 0 8px 0;
	font-size: 2.6rem; letter-spacing: 0rem;
	pointer-events: none;
}

.kanechika_event_contact .contact,
.kanechika_netsuke_teacher_contact .contact {
	display: block;
	padding: 4px 0 4px 16px; border-radius: 0.5rem; margin: 8px 0 0 0;
	color: #FFF; font-size: 1.4rem;
	text-align: center;
	background: #062B49 url("../img/footer_ico_contact_off.svg") no-repeat left 52px center / 20px;
}

/* .bunshitsu_event section, */
/* .bunshitsu_item section, */
.kanechika_salon section {
	margin: 0 auto 120px auto;
}

.bunshitsu_event h2{
	background-image: url("../img/bunshitsu_event_mainimg.jpg")
}

.bunshitsu_event h2 > p{
	letter-spacing: 0.23em;
	line-height: 2.0;
}

.bunshitsu_item h2{
	background-image: url("../img/bunshitsu_item_mainimg.jpg")
}

.bunshitsu_tobusatate h2{
	background-image: url("../img/bunshitsu_tobusatate_mainimg.jpg")
}
.bunshitsu_tobusatate_eyecatch_logo {
    position: absolute;
    top: 50%;
    left: 0;
	right: 0;
	bottom: 0;
	transform: translate(0,-50%);
	margin: 0 auto;
}

.kanechika_salon h2 {
	background-image: url("../img/kanechika_salon_mainimg.jpg")
}

.bunshitsu_event .cmn_tate,
.bunshitsu_item .cmn_tate,
.kanechika_salon .cmn_tate {
	margin: 0 auto 100px auto
}

.kanechika_salon ul {
	display: flex;
	justify-content: space-between;
	padding: 0 0 120px 0;
}

.kanechika_salon li {
	width: 33%;
}

.kanechika_togi {
	margin: 0 auto 100px auto;
}

.kanechika_togi > dl {
	display: flex;
	justify-content: space-between;
	padding: 50px 50px 42px 50px; border: 1px solid #062B49; border-radius: 0.5rem;
}

.kanechika_togi > dl > dt {
	flex-shrink: 0;
	display: flex;
	justify-content: space-between;
	width: 340px; margin: 0 30px 0 0;
}

.kanechika_togi h4 {
	flex-shrink: 0;
	width: 64px; margin: 0 16px 0 0;
	text-align: center;
}

.kanechika_togi h4 div {
	display: inline-block;
	margin: 14px 3px 0 0;
	color: #062B49; font-size: 3.9rem;
	letter-spacing: 0.4rem;

	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	-o-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
}

.kanechika_togi .taiken_imgbox img:first-of-type {
	display: block;
	margin: 0 0 10px 0;
}

.kanechika_togi .taiken_imgbox img {
	width: 100%;
}

.kanechika_togi > dl > dd {
	width: 100%;
}

.kanechika_togi > dl > dd p {
	margin: -4px 0 16px 0;
	font-size: 2.4rem;
}

.kanechika_togi > dl dl {
	display: flex;
	flex-wrap: wrap;
	text-align: justify;
	text-justify: inter-ideograph;
	letter-spacing: 0rem;
}

.kanechika_togi > dl dl dt {
	width: 116px; margin: 0 10px 0 0;
}

.kanechika_togi > dl dl dd {
	width: calc(100% - 116px - 10px);
}

.kanechika_togi > dl dl dd a[href*=mailto] {
	text-decoration: underline;
}

.kanechika_togi > dl dl dd a[href*=tel] {
	pointer-events: none;
}

.kanechika_togi > p {
	margin: 16px 0 0 0;
	font-size: 1.4rem;
	text-align: justify;
	text-justify: inter-ideograph;
}




/* gallery /////////////////////////////////////////////////////////////////////////////////////////// */
.gallery_mainimg {
	background-image: url("../img/gallery_mainimg_sp.jpg");
}

.gallery_msg h2 img {
	width: 200px;
}

.gallery_geku > h2 {
	background-image: url("../img/gallery_gekusandou_mainimg.jpg")
}

.gallery_geku > section {
	margin: 0 auto 120px auto;
}

.gallery_geku_event dt {
	padding: 8px; border: 2px solid #062B49; border-radius: 0.5rem 0.5rem 0 0;
	color: #FFF; font-size: 1.6rem; letter-spacing: 0.2rem;
	background: #062B49;
	text-align: center;
}

.gallery_geku_event dd {
	padding: 16px 8px; border: 2px solid #062B49; border-radius: 0 0 0.5rem 0.5rem; margin: -2px 0 30px 0;
	font-size: 2.0rem;
	text-align: center;
}

.gallery_geku_event p {
	font-size: 1.4rem;
}

.gallery_geku_josetsu > div {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	margin: 0 0 50px 0;
}

.gallery_geku_josetsu > div img {
	display: block;
	width: 100%; margin: 0 0 50px 0;
}

.gallery_geku_josetsu > div h5 {
	width: 60%;
	font-size: 3.2rem; font-weight: bold;
}

.gallery_geku_josetsu > div span {
	display: inline-block;
	padding: 4px 30px; border: 1px solid #E83828; border-radius: 0.5rem; margin: -4px 0 30px 0;
	color: #E83828; font-size: 1.6rem;
	font-family: "KozGoPro-Light", "小塚ゴシック Pro L", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
	text-align: center;
}

.gallery_geku_josetsu > div h4 {
	width: 25%;
	font-size: 3.8rem; font-weight: bold;
}

.gallery_geku_josetsu > div p {
	width: 70%; margin: -12px 0 0 0;
	text-align: justify;
	text-justify: inter-ideograph;
}

.gallery_geku_josetsu dl {
	display: flex;
	justify-content: space-between;
	padding: 50px 0;
	border-top: 2px solid #062B49;
	border-bottom: 2px solid #062B49;
}

.gallery_geku_josetsu dt {
	flex-shrink: 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	width: 35%; min-width: 280px; margin: 0 20px 0 0;
}

.gallery_geku_josetsu dt img {
	flex-shrink: 0;
	width: 70%;
}

.gallery_geku_josetsu dl h4 {
	width: 100%;
	text-align: center;
}

.gallery_geku_josetsu dl h4 div {
	display: inline-block;
	color: #062B49; font-size: 3.0rem; font-weight: bold;
	text-align: left;

	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	-o-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
}

.gallery_geku_josetsu dl h4 span {
	display: block;
	font-size: 1.3rem;
}

.gallery_geku_josetsu dd {
	width: 100%; margin: -6px 0 0 0;
}

.gallery_geku_josetsu dd li {
	display: flex;
}

.gallery_geku_josetsu dd li p {
	flex-shrink: 0;
	display: inline-block;
	margin: 0 20px 0 0;
}

.gallery_kairou > h2 {
	background-image: url("../img/gallery_kairou_mainimg.jpg")
}

.gallery_kairou > section {
	margin: 0 auto 120px auto;
}

.gallery_kairou_josetsu > div {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}

.gallery_kairou_josetsu > div div {
	display: flex;
	align-items: flex-start;
	width: 100%; margin: 0 0 50px 0;
}

.gallery_kairou_josetsu > div div img {
	width: 50%;
}

.gallery_kairou_josetsu > div span {
	display: inline-block;
	padding: 4px 30px; border: 1px solid #E83828; border-radius: 0.5rem; margin: -4px 0 30px 0;
	color: #E83828; font-size: 1.6rem;
	font-family: "KozGoPro-Light", "小塚ゴシック Pro L", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
	text-align: center;
}

.gallery_kairou_josetsu > div h4 {
	width: 60%;
	font-size: 3.8rem; font-weight: bold;
	font-family: "ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","ＭＳ Ｐ明朝","MS PMincho",serif;
}

.gallery_kairou_josetsu > div p {
	width: 70%; margin: -12px 0 0 auto;
	text-align: justify;
	text-justify: inter-ideograph;
}




/* rentalspace /////////////////////////////////////////////////////////////////////////////////////////// */
.rentalspace_mainimg {
	background-image: url("../img/rentalspace_mainimg_sp.jpg");
}

.rentalspace_msg h2 img {
	width: 80px;
}

.rentalspace_info > section {
	margin: 0 auto 120px auto;
}

.rentalspace_info_detail > img {
	display: block;
	width: 100%; margin: 0 0 50px 0;
}

.rentalspace_detail_gallery {
	margin: 0 0 50px 0;
}

.rentalspace_detail_gallery,
.rentalspace_detail_salon {
    padding: 50px 50px 42px 50px;
    border: 1px solid #062B49;
    border-radius: 0.5rem;
}

.rentalspace_detail_gallery > div,
.rentalspace_detail_salon > div {
    display: flex;
    justify-content: space-between;
}

.rentalspace_detail_gallery > div h4,
.rentalspace_detail_salon > div h4 {
	flex-shrink: 0;
	margin: -50px 40px 0 0;
	font-size: 4.0rem; font-weight: bold; letter-spacing: 0.2rem;

	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	-o-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
}

.rentalspace_detail_gallery > div h4::before,
.rentalspace_detail_salon > div h4::before {
	content: '';
	display: inline-block;
	width: 40px; height: 100px; margin: 0 -3px 16px 0;
	box-sizing: border-box;
}

.rentalspace_detail_gallery > div h4::before {
	background: #F9C898;
}

.rentalspace_detail_salon > div h4::before {
	background: #62BCC3;
}

.rentalspace_detail_gallery > div img {
	display: block;
	width: 100%; margin: 0 0 20px 0;
}

.rentalspace_detail_salon > div div {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	width: 100%;
}

.rentalspace_detail_salon > div div img {
	width: 50%;
}

.rentalspace_detail_gallery > div h5 {
	margin: 0 0 20px 0;
	font-size: 2.5rem; font-weight: bold;
}

.rentalspace_detail_salon > div div h5 {
	width: 100%; margin: 20px 0 20px 0;
	font-size: 2.5rem; font-weight: bold;
}

.rentalspace_detail_gallery dl {
	width: 68%; margin: -98px 0 0 auto;
}

.rentalspace_detail_salon dl {
	width: 68%; margin: 0 0 0 auto;
}

.rentalspace_detail_gallery dl div,
.rentalspace_detail_salon dl div {
	display: flex;
}

.rentalspace_detail_gallery dl dt,
.rentalspace_detail_salon dl dt {
	flex-shrink: 0;
	width: 136px;
	margin: 0 10px 0 0;
    -moz-text-align-last: justify;
    text-align-last: justify;
    text-justify: inter-ideograph;
}

.rentalspace_detail_gallery dl dd,
.rentalspace_detail_salon dl dd {
	width: 100%;
}

.rentalspace_info_entry > p {
	margin: 0 0 50px 0;
	font-size: 1.5rem;
	text-align: justify;
	text-justify: inter-ideograph;
}

.rentalspace_info_entry > div {
	display: block;
}

.rentalspace_info_entry > div a {
	display: block;
	width: 49%; padding: 10px 16px; border-radius: 0.5rem;
	margin: 0 auto 10px;
	color: #FFF; font-size: 2.0rem; font-weight: bold;
	text-align: center;
	background: #062B49;
}

.rentalspace_info_entry.rentalspace_info_entry > div a:nth-of-type(1) {
	margin-bottom: 34px;
}

.rentalspace_entry_address {
	margin-top: 50px;
	text-align: center;
}

.rentalspace_entry_address > dt {
	font-size: 1.7rem;
	font-weight: 700;
}

.rentalspace_entry_address > dd {
	margin-top: 4px;
}

.rentalspace_entry_address > dd > span {
	display: inline-block;
	margin: 0 0.5em;
}


/* item /////////////////////////////////////////////////////////////////////////////////////////// */
.item_mainimg {
	background-image: url("../img/item_mainimg_sp.jpg");
}

.item_box {
	margin: 0 auto 120px auto;
}

.item_box_slide {
	height: 660px; margin: 0 0 50px 0;
}

/* slick調整 */
.slick-dots {
	bottom: 16px !important;
}

.slick-dots li.slick-active button:before {
	color: #FFF !important;
}
/* /slick調整 */

.item_box dl {
	display: flex;
	justify-content: space-between;
	height: 350px;
}

.item_box dt {
	position: relative;
	flex-shrink: 0;
	width: 65%; padding: 30px 0;
	border-top: 2px solid #062B49;
	border-bottom: 2px solid #062B49;
}

.item_box dt h2 {
	margin: 12px 0 24px 0;
	font-size: 2.8rem; font-weight: bold;
}

.item_box dt p {
	text-align: justify;
	text-justify: inter-ideograph;
	letter-spacing: 0.2rem;
}

.item_box dt > a {
	position: absolute;
	bottom: -2px; right: 0;
	display: block;
	width: 150px; height: 30px;
    padding: 0 0 0 30px;
    background: url(../img/item_btn_bg.svg) no-repeat right -13px center / cover;
	color: #FFF; font-size: 1.4rem; letter-spacing: 0rem; line-height: 30px;
	text-align: center;
}

.item_box dd {
	flex-shrink: 0;
	width: 31%; padding: 30px 14px;
	border: 1px solid #062B49; border-radius: 0.5rem;
	text-align: center;
}

.item_box dd h3 {
	margin: 0 0 16px 0;
	font-size: 2.0rem; font-weight: bold;
}

.item_box dd h3 img {
	width: 20px; margin: -4px 0 0 0;
}

.item_box dd p {
	display: inline-block;
	font-size: 1.4rem; line-height: 180%;
	text-align: left;

	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	-o-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;

}

.item_box dd p:first-of-type {
	margin: 0 0 20px 0;
}

#item_shinwauranai dd p {
	line-height: 300%;
}

#item_sakka dt p {
	line-height: 180%
}

#item_sakka dd p {
	line-height: 150%;
}

#item_gensen dd p {
	line-height: 240%;
}

#item_gekumiyage dt div {
	margin: 8px 0 0 0;
	text-align: right;
}

#item_gekumiyage dt div img {
	display: inline-block;
	width: 34%; min-width: 180px; margin: -8px 0 0 0;
}

#item_gekumiyage dd p {
	line-height: 200%;
}

#item_books dt {
	width: 45%;
}

#item_books dd {
	width: 52%;
}

#item_books dd p {
	letter-spacing: 0rem;
	line-height: 176%;
}


/* news /////////////////////////////////////////////////////////////////////////////////////////// */
.news_mainimg {
	background-image: url("../img/news_mainimg_sp.jpg");
}

.news_list li {
	margin: 0 0 50px 0;
}

.news_list dl {
	display: flex;
	height: 200px; border: 1px solid #062B49; border-radius: 0.5rem;
	overflow: hidden;
}

.news_list dt {
	flex-shrink: 0;
	width: 30%; height: 100%;
	position: relative;
	overflow: hidden;
}

.news_list dt img {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	width: 102%;
	height: auto;
	max-width: none;
	max-height: none;
	min-width: 0;
	min-height: 100%;
}

.news_list dd {
	width: 100%; height: 100%; padding: 24px 20px;
	background: url("../img/news_bg_off.svg") no-repeat left -80px center / 166px;
	overflow: hidden;
}

.news_list a:hover dd {
	color: #FFF;
	background: #062B49 url("../img/news_bg_on.svg") no-repeat left -80px center / 166px;
}

.news_list dd > span {
	display: block;
	margin: 0 0 2px 0;
	font-size: 1.2rem;
}

.news_list dd > h2 {
	width: 100%; margin: 0 0 12px 0;
	font-size: 2.4rem; font-weight: bold;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.news_list dd > p {
	line-height: 200%;
}

.news_pager,
ul.page-numbers {
	display: flex;
	justify-content: center;
	margin: 0 0 120px 0;
}

.news_pager li,
ul.page-numbers li {
	margin: 0 5px;
	font-size: 1.4rem;
}

/* news-single */
.news_single_wrap {
	display: flex;
	justify-content: space-between;
	padding: 190px 0 120px 0;
}

.news_single_wrap > h2 {
	position: relative;
	z-index: 999;
	flex-shrink: 0;
	width: 150px; margin: -190px 0 0 0;
	text-align: center;
}

.news_single_wrap > h2 p {
	display: inline-block;
	width: 90px; padding: 190px 0 124px 0;
	border-radius: 0 0 1.0rem 1.0rem;
	background: #062B49 url("../img/news_detail_bg.svg") no-repeat center bottom 10px / 130px;
	color: #FFF; font-size: 2.4rem; font-weight: bold;
	line-height: 90px;
	word-wrap: break-word;
	overflow-wrap : break-word;
	white-space: nowrap;

	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	-o-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
}

.news_single_conts {
	flex-shrink: 0;
	width: 62%; margin: 0;
}

.news_single_txt {
	padding: 0 0 100px 0; border-bottom: 2px solid #062B49; margin: 0 0 20px 0;
}

.news_single_txt >  span {
	display: block;
	margin: 0 0 20px 0;
	font-size: 1.2rem;
}

.news_single_conts img {
	display: block;
	max-width: 100%; height: auto; margin: 40px auto;
}

.news_single_linkbox {
	flex-shrink: 0;
	width: 18%; margin: 0;
}

.news_single_pager {
	display: flex;
	justify-content: space-between;
}

.news_single_linkbox h3 {
	margin: 0 0 8px 0;
	font-size: 1.8rem; font-weight: bold;
	text-align: center;
}

.news_single_linkbox a {
	display: block;
	padding: 4px 0; border-top: 2px solid #062B49;
	overflow: hidden;
}

.news_single_linkbox li:last-of-type a {
	border-bottom: 2px solid #062B49;
}

.news_single_linkbox li span {
	display: block;
	margin: 0 0 -8px 0;
	font-size: 1.2rem;
}

.news_single_linkbox li p {
	width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 1.4rem;
}

/* contact /////////////////////////////////////////////////////////////////////////////////////////// */
.contact_mainimg {
	background-image: url("../img/contact_mainimg_sp.jpg");
}

.contact_tel {
    display: block;
    width: 300px;
    margin: 0 auto 120px auto;
	pointer-events: none;
}

.contact_tform {
    width: 90%;
    margin: 0 0 50px 0;
}

.contact_tform th {
    width: 35%;
    padding: 15px 10px 15px 0;
    font-size: 1.6rem;
    text-align: right;
	vertical-align: top;
}

.contact_tform td {
    width: 65%;
    padding: 8px 10px 8px 0;
}

.contact_tform th span {
    color: #dc2726;
}

.contact_tform td input {
    width: 100%;
    height: 34px;
    border-radius: 5px;
    border: 1px solid #062b49;
}

.contact_tform td textarea {
    width: 100% !important;
	height: 250px !important;
	border-radius: 5px;
    border: 1px solid #062b49;
}

/*slick調整*/
.contact_tform td .mfp_element_all {
	max-width: none;
}

.contact_button {
    text-align: center;
    margin: 0 0 120px 0;
}

.contact_button button {
    width: 200px;
    height: 50px;
    border-radius: 5px;
    border: 0px;
    font-size: 2.0rem;
    color: #ffffff;
	text-shadow: none;/*slick調整*/
	padding: 0;/*slick調整*/
	background: none;/*slick調整*/
    background-color: #062b49;
}

.contact_button button:hover {
    width: 200px;
    height: 50px;
    border: 1px solid #062b49;
    color: #ffffff;
	background: none;/*slick調整*/
	box-shadow: none;/*slick調整*/
    background-color: #205178;
}

.contact_button button:active {
    transform: translate3d(0, 3px, 0);
    background-color: #ffffff;
    color: #062b49;
}


/* company /////////////////////////////////////////////////////////////////////////////////////////// */
.company_mainimg {
	background-image: url("../img/company_mainimg_sp.jpg");
}

.company_wrap {
	padding: 190px 0 0 0;
}

.company_table {
    max-width: 1000px;  width: 100%;
    margin: 0 0 120px 0;
}

.company_table th {
    width: 220px;
    padding: 15px 45px;
    border-top: 0px solid #ffffff;
    border-bottom: 1px solid #ffffff;
    background-color: #062b49;
    color: #ffffff;
    -moz-text-align-last: justify;
    text-align-last: justify;
    text-justify:inter-ideograph;
 }

.company_table td {
    border: 1px solid #062b49;
    padding: 15px 45px;
}

.company_staff {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    vertical-align: top;
	margin: 0 0 120px 0;
}

.company_staff dt {
    width: 360px;
    /*margin: 50px 0 50px 0;*/
	padding: 50px 0;
    border-bottom: 1px solid #000000;
}

.company_staff dd {
    width: calc(100% - 360px);
    /*margin: 50px 0 50px 0;
    padding: 0 0 40px 0;*/
	padding: 50px 0;
    border-bottom: 1px solid #000000;
}

.company_staff dt:first-of-type,
.company_staff dd:first-of-type {
	border-top: 1px solid #000000;
}


.company_staff dt img {
	display: inline-block;
    vertical-align: top;
    width: 250px; margin: 4px 0 0 0;
}

.company_staff dt h3 {
    display: inline-block;
    padding: 3px 0 0 30px;
    font-size: 1.3rem;
    -ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	-o-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
	text-align: left;
}

.company_staff dt span {
    display: block;
    font-size: 3.0rem;
    letter-spacing: 6px;
}


.company_staff dd p {
    padding: 0px;
	text-align: justify;
	text-justify: inter-ideograph;
}





/* kikuichibunshitsu /////////////////////////////////////////////////////////////////////////////////////////// */
.bunshitsu_mainimg{
	background-image: url("../img/bunshitsu_mainimg_sp.jpg");
}
.bunshitsu_msg h2 img {
    /* width: 220px; */
}
.bunshitsu_event{
	padding-bottom: 120px;
}
@media screen and (max-width: 640px) {
	.bunshitsu_event{
		padding-bottom: 80px;
	}
}
.bunshitsu_item {
	padding-bottom: 120px;
}
@media screen and (max-width: 640px) {
	.bunshitsu_item{
		padding-bottom: 80px;
	}
}
.bunshitsu_item_menu {
	display: flex;
	justify-content: space-between;
	padding: 50px 50px 42px 50px; border: 1px solid #062B49; border-radius: 0.5rem;
}

.bunshitsu_item_menu_box_1 {
	flex-shrink: 0;
	width: 64px;
	margin: 0 24px 0 0;
	text-align: center;
}

.bunshitsu_item_menu_box_1 h4 div {
	display: inline-block;
	margin: 14px 3px 0 0;
	color: #062B49; font-size: 3.9rem;
	letter-spacing: 0.4rem;

	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	-o-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
}

.bunshitsu_item_menu_box_2 {
	display: flex;
	flex-direction: column;
	width: 100%;
}

.bunshitsu_item_menu_box_2_copy {
	flex-shrink: 0;
	margin: -4px 0 16px 0;
	font-size: 2.4rem;
}

.bunshitsu_item_menu_box_2_list {
	display: flex;
	flex-wrap: wrap;
	align-content: flex-start;
	text-align: justify;
	text-justify: inter-ideograph;
	height: 100%;
	letter-spacing: 0rem;
}

.bunshitsu_item_menu_box_2_list dt {
	width: 116px; margin: 0 10px 0 0;
}

.bunshitsu_item_menu_box_2_list dd {
	width: calc(100% - 116px - 10px);
	line-height: 2.13;
}

.bunshitsu_item_menu_box_2_list dt:not(:nth-of-type(1)),
.bunshitsu_item_menu_box_2_list dd:not(:nth-of-type(1)) {
	margin-top: 30px;
}

.bunshitsu_item_menu_box_2_list dd > span{
	display: block;
}

.bunshitsu_item_menu_box_2_list dd > .fwb{
	font-weight: 700;
}

.bunshitsu_item_menu_box_2_list dd > .ti{
	padding-left: 3.0666em;
}

.bunshitsu_item_menu_box_2_note{
	flex-shrink: 0;
	margin-top: auto;
	text-align: right;
}

.bunshitsu_item_menu_box_3 {
	flex-shrink: 0;
	width: 290px;
	text-align: center;
	margin-left: 30px;
}

.bunshitsu_item_menu_box_3 img {
	display: inline-block;
}

.bunshitsu_item_menu_box_3 img:not(:nth-of-type(1)) {
	margin-top: 10px;
}
@media screen and (max-width: 640px) {
	.bunshitsu_item_menu {
		flex-wrap: wrap;
		/* padding: 24px 18px; */
		padding: 26px 26px 24px;
	}

	.bunshitsu_item_menu_box_1{
		margin-right: 14px;
	}

	.bunshitsu_item_menu_box_1 h4 div {
		display: inline-block;
		font-size: 2.8rem;
	}

	.bunshitsu_item_menu_box_2 {
		order: 99;
		display: block;
		margin-top: 30px;
	}

	.bunshitsu_item_menu_box_2_copy {
		margin: 0 0 16px 0;
		font-size: 2.0rem;
	}

	.bunshitsu_item_menu_box_2_list {
		height: auto;
	}

	.bunshitsu_item_menu_box_2_list dt {
		width: 100%; margin: 0 0 2px 0;
	}

	.bunshitsu_item_menu_box_2_list dd {
		width: 100%; padding: 0 0 16px 6px;
		font-size: 1.4rem;
	}

	.bunshitsu_item_menu_box_2_list dt:not(:nth-of-type(1)){
		margin-top: 1.2em;
	}
	.bunshitsu_item_menu_box_2_list dd:not(:nth-of-type(1)) {
		margin-top: 0px;
	}

	.bunshitsu_item_menu_box_2_note{
		margin-top: 1.2em;
		font-size: 14px;
	}

	.bunshitsu_item_menu_box_3 {
		width: calc(100% - 64px - 14px);
		margin-left: 0;
	}
}
.bunshitsu_event_imglist{
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	margin-bottom: 100px;
}
.bunshitsu_event_imglist_item{
	width: 49%;
}
.bunshitsu_event_imglist_item:nth-of-type(2){
	margin-top: 110px;
}
@media screen and (max-width: 640px) {
	.bunshitsu_event_imglist{
		display: block;
		margin-bottom: 60px;
	}
	.bunshitsu_event_imglist_item{
		width: 100%;
	}
	.bunshitsu_event_imglist_item:nth-of-type(2){
		margin-top: 10px;
	}
}
.bunshitsu_tobusatate{
	padding-bottom: 120px;
	background-color: #bbc8c8;
}
@media screen and (max-width: 640px) {
	.bunshitsu_tobusatate{
		padding-bottom: 80px;
	}
}
.bunshitsu_tobusatate_imglist{
	display: flex;
	justify-content: space-between;
	/* padding: 0 0 100px 0; */
	padding: 0 0 95px 0;
}
.bunshitsu_tobusatate_imglist_item{
	width: 33%;
}
@media screen and (max-width: 640px) {
	.bunshitsu_tobusatate_box{
		display: flex;
		flex-direction: column-reverse;
		flex-wrap: wrap;
	}
	.bunshitsu_tobusatate_imglist.bunshitsu_tobusatate_imglist{
		width: 100%;
		/* padding: 0 3% 80px; */
		/* padding: 0 3% 75px; */
		padding: 0 3% 40px;
	}
}
.bunshitsu_tobusatate_tate{
	margin-bottom: 3em;
}
.bunshitsu_tobusatate_youtubebtn {
    display: block;
	/* width: 200px; */
	width: 190px;
    padding: 4px 0;
    border-radius: 0.5rem;
    margin: 8px auto;
	color: #FFFFFF;
    font-size: 1.4rem;
    text-align: center;
    background-color: #062B49;
}

