@charset "UTF-8";

@media only screen and (min-width: 1400px)  {

/* common /////////////////////////////////////////////////////////////////////////////////////////// */


/* home /////////////////////////////////////////////////////////////////////////////////////////// */
.home_pnav li a:hover h2 {
	font-size: 3.0rem;
}

}

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

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

.pcNone {
	display: block;
}

.cmn_box_1100 {
	width:100%; padding: 0 3%;
}

.cmn_box_1000 {
	width:100%; padding: 0 3%;
}

.cmn_box_900 {
	width:100%; padding: 0 3%;
}

.cmn_wrap_min1100 {
	min-width: 0;
}

.cmn_tate {
	margin: 0 auto 60px auto;
}

.cmn_tate .txt_spNone {
	display: none;
}

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

.cmn_tate p {
	color: #062B49; font-weight: bold;
	letter-spacing: 0.3rem;

	font-size: 3.0vw;
	line-height: 8.0vw;
}

.cmn_title {
	margin: 0 auto 30px auto;
}

.cmn_title div {
	font-size: 2.0rem;
}

.sub_mainimg {
	height: 0; padding: 47% 0 0 0; margin: 60px 0 80px 0;
}

.sub_msg h2 {
	margin: 0 0 60px 0;
}

.sub_access {
	padding: 80px 0;
}

.sub_access section > div {
    margin: 0 0 30px 0;
}

.sub_access dl {
	display: block;
}

.sub_access dt {
	width: 100%; padding: 0; margin: 0 0 20px 0;
}

.sub_access dt h3 {
	font-size: 1.8rem;
}

.sub_access dt li {
	font-size: 1.4rem;
}

.sub_access dd {
	padding: 0; border-left: 0;
}

.sub_access dd p {
	margin: 0;
	font-size: 1.4rem;
}

.sub_eyecatch {
	/* height: 400px; */
	/* padding: 0; */
	margin: 0 0 80px 0;
}

.sub_eyecatch p {
	font-size: 3.0rem;
	letter-spacing: 0.2rem;
}



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

.header_inner {
	justify-content: space-between;
}

.header_fix .header_logo02,
.header_fix .header_logo02_sp,
.header_fix .sub_header_logo02,
.header_fix .sub_header_logo02_sp {
	justify-content: flex-start; align-items: center;
	margin: 16px 30px 0 0;
}

.header_logo02 img,
.header_logo02_sp img,
.header_fix .sub_header_logo02 img,
.header_fix .sub_header_logo02_sp img {
	display: inline-block;
	width: 64px;
}

.header_gnav {
	display: none;
}

.header_ec {
	display: none;
}

.header_spmenu {
	align-self: center;
	display: block;
	margin: 16px 0 0 0;
}

#openModal {
    cursor: pointer;
	outline: none;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}

#openModal img {
	width: 40px;
}

.modalArea {
	display: none;
	position: fixed;
	z-index: 9999; /*サイトによってここの数値は調整 */
	top: 0; left: 0; right: 0; bottom: 0;
}

.modalBg {
	width: 100%;
	height: 100%;
}

.modalWrapper {
	position: absolute;
	top: 0; right: 0;
	width: 66%; min-width: 230px; height: 100vh; padding: 7.2vw 9.8vw 0 7.8vw;
	background: #0D2B48 url("../img/header_spmenu_bg.svg") no-repeat right -568% top -30px / 94% auto;
}

.modalWrapper ul {
	margin: 0 0 5.0vw 0;
}

.modalWrapper li:not(:last-of-type) {
	margin: 0 0 2.4vw 0;
}

.modalWrapper li a {
	color: #FFF; font-size: 2.4rem; font-weight: bold;
	font-size: 3.8vw;
}

.modalWrapper > a {
	display: block;
	width: 100%; padding: 1.0vw 3.8vw 2.2vw 3.8vw; border: 2px solid #FFF; border-radius: 0.5rem;
	color: #FFF; font-size: 2.2rem; font-weight: bold;
	font-size: 3.4vw;
	text-align: center;
}

.closeModal {
	position: absolute;
	top: 25px; right: 25px;
	cursor: pointer;
	outline: none;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}

.closeModal img {
	width: 40px; height: 30px;
}


.header_nofix {
	display: none;
}

.cmn_gotop a {
    right: 3%;
}

.footer_tel {
	pointer-events: auto;
}


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

/* swiper調整 */
.home_mainimg_pc {
	display: none !important;
	margin: 0 0 80px 0 !important;
}

.home_mainimg_sp {
	display: block !important;
	width: 100% !important;
	margin: 60px 0 80px 0 !important;
}

.home_mainimg_sp img {
	width: 100% !important;
}
/* /swiper調整 */

.home_msg .cmn_tate p {
	font-size: 3.2vw;
	letter-spacing: 0.2rem;
}


.home_msg > div {
	background: none;
}

.home_pnav ul {
	display: flex;
	flex-wrap: wrap;
}

.home_pnav li {
	width: 50%;
}

.home_pnav li a:hover h2 {
	font-size: 1.4rem;
	font-size: 4.2vw;
}

.home_news {
	padding: 80px 0;
}

.home_news li div {
	display: block;
}

.home_news li span {
	width: 100%; margin: 0 0 -2px 0;
	font-size: 1.3rem;
}

.home_news li p {
	font-size: 1.4rem;
}

.home_spmovie a {
	height: 100px;
	font-size: 1.9rem;
	letter-spacing: 0.2rem;
	background-position: right 22% top;
	background-position: right 25% top;
	white-space: nowrap;
}



/* about /////////////////////////////////////////////////////////////////////////////////////////// */
.about_msg .cmn_tate p,
.about_msg2 .cmn_tate p,
.about_toyokawaden .cmn_tate p {
	font-size: 3.6vw;
	line-height: 8.8vw;
}

.about_msg2_img{
	padding: calc(50vw - 130px) 0;
	margin-bottom: 60px;
}

.about_msg2_img .content{
	height: 260px;

	background-image: url(../img/about_msg2_img_bg_sp.png);
	background-size: auto 260px;
}

.about_msg2_img .content > div{
	width: 50%;
	height: auto;
	padding-top: 50%;
}

.about_msg2_img .content  > div:nth-of-type(1){
	background-image: url(../img/about_msg2_img_01_sp.jpg);
	bottom: auto;
	top: 50%;
	right: 50%;
}

.about_msg2_img .content  > div:nth-of-type(2){
	background-image: url(../img/about_msg2_img_02_sp.jpg);
	top: auto;
	bottom: 50%;
	left: 50%;
}

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

.about_toyokawaden .sub_eyecatch {
	background-position: -120px;
}

.about_toyokawaden ul {
	padding: 0 3% 80px;
}





/* kanechika /////////////////////////////////////////////////////////////////////////////////////////// */
.kanechika_netsuke_course {
	margin: 0 auto 30px auto;
}

.bunshitsu_tobusatate .cmn_tate p,
.bunshitsu_msg .cmn_tate p,
.bunshitsu_event .cmn_tate p,
.bunshitsu_item .cmn_tate p{
	font-size: clamp(0px,4.5vw,18px);
	/* line-height: 9.9vw; */
	line-height: 2.5;
}

.kanechika_msg .cmn_tate p,
.kanechika_netsuke .cmn_tate p,
.kanechika_salon .cmn_tate p {
	font-size: 3.8vw;
	line-height: 8.8vw;
}

.kanechika_netsuke .sub_eyecatch {
	/* background-position: -310px; */
	background-position: -280px;
}

.kanechika_salon .sub_eyecatch {
	background-position: -40px;
}

.kanechika_netsuke_course > dl {
	display: block;
	/* padding: 24px 18px; */
	padding: 20px 20px 18px;
}

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

.kanechika_netsuke_course > dl dt {
	width: 100%; margin: 0 0 30px 0;
}

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

.kanechika_netsuke_course > dl dl {
	display: block;
}

.kanechika_netsuke_course > dl dl dt {
	width: 100%; margin: 0 0 2px 0;
}

.kanechika_netsuke_course > dl dl dd {
	width: 100%; padding: 0 0 16px 20px;
	font-size: 1.4rem;
}

.kanechika_netsuke_course > dl dl dd {
	padding: 0 0 0 20px;
}

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

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

.kanechika_netsuke_teacher dl {
	display: block;
	padding: 24px 0;
	margin: 0 0 30px 0;
	font-size: 1.4rem;
}

.kanechika_netsuke_teacher dt {
	margin: 0 auto 30px auto;
}

.kanechika_netsuke_teacher dd {
	width: 100%; margin: 0;
	font-size: 1.4rem;
}

.kanechika_event_contact .tel,
.kanechika_netsuke_teacher_contact .tel {
	pointer-events: auto;
}

.kanechika_salon section {
	margin: 0 auto 80px auto;
}

.bunshitsu_event h2{
	background-image: url("../img/bunshitsu_event_mainimg_sp.jpg")
}
.bunshitsu_item h2{
	background-image: url("../img/bunshitsu_item_mainimg_sp.jpg")
}
.bunshitsu_tobusatate h2{
	background-image: url("../img/bunshitsu_tobusatate_mainimg_sp.jpg")
}
.bunshitsu_tobusatate_eyecatch_logo {
	width: 170px;
}

.kanechika_salon .cmn_tate {
	margin: 0 auto 60px auto;
}

.kanechika_salon ul {
	padding: 0 3% 80px;
}

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

.kanechika_togi > dl {
	display: block;
	padding: 24px 18px;
}

.kanechika_togi > dl > dt {
	width: 100%; margin: 0 0 30px 0;
}

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

.kanechika_togi > dl dl {
	display: block;
}

.kanechika_togi > dl dl dt {
	width: 100%; margin: 0 0 2px 0;
}

.kanechika_togi > dl dl dd {
	width: 100%; padding: 0 0 0 20px;
	font-size: 1.4rem;
}

.kanechika_togi > dl dl dd a[href*=tel] {
	pointer-events: auto;
	text-decoration: underline;
}

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



/* gallery /////////////////////////////////////////////////////////////////////////////////////////// */
.gallery_geku section {
	margin: 0 auto 80px auto;
}

.gallery_msg .cmn_tate p,
.gallery_geku .cmn_tate p,
.gallery_kairou .cmn_tate p {
	font-size: 4.0vw;
	line-height: 8.8vw;
}

.gallery_geku .sub_eyecatch {
	background-position: -336px;
}

.gallery_kairou .sub_eyecatch {
	background-position: -300px;
}


.gallery_geku_event dt {
	color: #FFF; font-size: 1.3rem; letter-spacing: 0.2rem; line-height: 170%;
}

.gallery_geku_event dd {
	margin: -2px 0 20px 0;
	font-size: 1.6rem; line-height: 170%;
}

.gallery_geku_josetsu > div {
	margin: 0 0 30px 0;
}

.gallery_geku_josetsu > div img {
	margin: 0 0 30px 0;
}

.gallery_geku_josetsu > div h5 {
	width: 100%; margin: 0 0 20px 0;
	font-size: 2.4rem;
}

.gallery_geku_josetsu > div span {
	order: 2;
	padding: 2px 30px;
	color: #E83828; font-size: 1.4rem;
}

.gallery_geku_josetsu > div h4 {
	order: 1;
	display: inline-block;
	width: auto; margin: 0 10px 20px 0;
	font-size: 2.8rem;
}

.gallery_geku_josetsu > div p {
	order: 3;
	width: 100%; margin: 0;
}

.gallery_geku_josetsu dl {
	display: block;
	padding: 24px 0;
}

.gallery_geku_josetsu dt {
	margin: 0 auto 30px auto;
}

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

.gallery_kairou_josetsu > div div {
	margin: 0 0 30px 0;
}

.gallery_kairou_josetsu > div h4 {
	width: 100%; margin: 0 0 20px 0;
	font-size: 2.4rem;
}

.gallery_kairou_josetsu > div span {
	padding: 2px 30px; margin: -4px 0 30px auto;
	color: #E83828; font-size: 1.4rem;
}

.gallery_kairou_josetsu > div p {
	width: 100%; margin: 0;
	font-size: 1.4rem;
}



/* rentalspace /////////////////////////////////////////////////////////////////////////////////////////// */
.rentalspace_info > section {
	margin: 0 auto 80px auto;
}

.rentalspace_msg .cmn_tate p {
	font-size: 4.0vw;
	line-height: 8.8vw;
}


.rentalspace_info_detail > img {
	margin: 0 0 30px 0;
}

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

.rentalspace_detail_gallery,
.rentalspace_detail_salon {
    padding: 20px;
}

.rentalspace_detail_gallery > div h4,
.rentalspace_detail_salon > div h4 {
	margin: -20px 20px 0 0;
	font-size: 2.8rem;
	white-space: nowrap
}

.rentalspace_detail_salon > div div {
	display: block;
}

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

.rentalspace_detail_gallery > div h5 {
	font-size: 1.8rem; font-weight: bold; line-height: 180%;
}

.rentalspace_detail_salon > div div h5 {
	width: calc(100% + 60px); margin: 20px 0 20px -60px;
	font-size: 1.8rem; font-weight: bold; line-height: 180%;
}

.rentalspace_detail_gallery dl {
	width: 100%; margin: 20px 0 0 0;
	font-size: 1.4rem;
}

.rentalspace_detail_salon dl {
	width: 100%; margin: 0;
	font-size: 1.4rem;
}

.rentalspace_info_entry > p {
	margin: 0 0 30px 0;
}

.rentalspace_info_entry > div {
	display: block;
}

.rentalspace_info_entry > div a {
	width: 100%;
	color: #FFF; font-size: 1.6rem; font-weight: bold;
}

.rentalspace_info_entry > div a:first-of-type {
	margin: 0 0 20px 0;
}





/* item /////////////////////////////////////////////////////////////////////////////////////////// */
.item_box {
	margin: 0 auto 80px auto;
}

.item_box_slide {
	height: auto; margin: 0 0 30px 0;
}

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

.item_box dl {
	display: block;
	height: auto;
}

.item_box dt {
	width: 100%; padding: 30px 0; margin: 0 0 30px 0;
}

.item_box dt h2 {
	margin: 0 0 16px 0;
	font-size: 2.4rem; line-height: 150%;
}

.item_box dt p {
	font-size: 1.4rem;
}

.item_box dt > a {
	font-size: 1.3rem;
}

.item_box dd {
	width: 100%; padding: 20px 16px;
	text-align: center;
}

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

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

#item_gekumiyage dt div {
	margin: 8px 0;
}

#item_books dt {
	width: 100%;
}

#item_books dd {
	width: 100%;
}

#item_books dd p {
	font-size: 1.3rem;
	letter-spacing: -0.1rem;
	line-height: 210%;

	margin: 0;

	column-count: 2;
	column-gap: 2px;
	-webkit-column-count: 2;
	-webkit-column-gap: 2px;
	-ms-column-count: 2;
	-ms-column-gap: 2px;
	-moz-column-count: 2;
	-moz-column-gap: 2px;
}



/* news /////////////////////////////////////////////////////////////////////////////////////////// */
.news_list li {
	margin: 0 0 30px 0;
}

.news_list dl {
	display: block;
	height: auto;
}

.news_list dt {
	width:100%; height: 0; padding: 66% 0 0 0;
}

.news_list dd {
	width: 100%; height: auto; padding: 24px 20px;
	background: url("../img/news_bg_off.svg") no-repeat center top -100px / 200px;
}

.news_list a:hover dd {
	background: #062B49 url("../img/news_bg_on.svg") no-repeat center top -100px / 200px;
}

.news_list dd > h2 {
	margin: 0;
	font-size: 2.0rem; font-weight: bold;
}

.news_list dd p {
	display: none;
}

.news_pager,
ul.page-numbers {
	margin: 0 0 80px 0;
}

/* news-single */
.news_single_wrap {
	display: block;
	padding: 100px 0 80px 0;
}

.news_single_wrap > h2 {
	position: static;
	width: calc(100% + 4%); margin: 0 0 30px -4%;
	text-align: left;
}

.news_single_wrap > h2 p {
	display: block;
	width: 100%; padding: 24px 3%;
	border-radius: 0 1.0rem 1.0rem 0;
	background: #062B49 url("../img/news_detail_bg_sp.svg") no-repeat right 10px top -30px / 110px;
	color: #FFF; font-size: 2.0rem; font-weight: bold;
	line-height: normal;
	white-space: normal;

	writing-mode: horizontal-tb;
    -ms-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    -webkit-writing-mode: horizontal-tb;
}

.news_single_conts {
	width: 100%; margin: 0 0 80px 0;
}

.news_single_txt {
	padding: 0 0 80px 0;
}

.news_single_conts img {
	margin: 30px auto;
}

.news_single_linkbox {
	width: 100%; margin: 0;
}




/* contact /////////////////////////////////////////////////////////////////////////////////////////// */
.contact_tel {
	pointer-events: auto;
}

.contact_tform {
    width: 100%;
    margin: 0 0 50px 0;
}
.contact_tform tr {
    display: block;
}

.contact_tform th {
    display: block;
    width: 100%;
    padding: 0 10px 8px 0;
    font-size: 1.5rem;
    text-align: left;
}
.contact_tform td {
    display: block;
    width: 100%;
    padding: 0 0 16px 0;
}

.contact_tform td input {
    width: 100%;
}


/* company /////////////////////////////////////////////////////////////////////////////////////////// */
.company_wrap {
	padding: 100px 0 0 0;
}

.company_table {
    width: 100%;
    margin: 0 0 80px 0;
}

.company_table tr {
    display: block;
}

.company_table th {
    display: block;
    width: 100%;
    padding: 7px 0 7px 35px;
    border-top: 0px solid #ffffff;
    border-bottom: 0px solid #ffffff;
    text-align-last: auto;
	text-align: left;
}

.company_table td {
    display: block;
    width: 100%;
    padding: 15px 30px 15px 33px;
    font-size: 1.4rem;
    line-height: 2.4rem;
}


.company_staff {
    width: 100%;
    display: block;
	margin: 0 0 80px 0;
}

.company_staff dt {
    width: 100%;
    padding: 24px 0 16px 0;
    border-bottom: 0px solid #000000;
    text-align: center;
}

.company_staff dt img {
    width: 180px;
}

.company_staff dd {
    display: block;
    width: 100%;
    padding: 0 0 24px 0;
    border-bottom: 1px solid #000000;
    vertical-align: top;
}

.company_staff dd:first-of-type {
	border-top: 0;
}





}