@charset "utf-8";
/* CSS Document */
.mt10{margin-top:10px !important;}
.mt20{margin-top:20px !important;}
.mt30{margin-top:30px !important;}
.mt40{margin-top:40px !important;}
.mt50{margin-top:50px !important;}
.mt60{margin-top:60px !important;}

.mb10{margin-bottom:10px !important;}
.mb20{margin-bottom:20px !important;}
.mb30{margin-bottom:30px !important;}
.mb40{margin-bottom:40px !important;}
.mb50{margin-bottom:50px !important;}
.mb60{margin-bottom:60px !important;}


/*
【360新潟レスポンシブ設計定義】
1200px～：PC
801px～1199px：タブレット（タブレット専用デザインは作成しない、基本的にスマホのデザインを適用するがPCのデザインで問題ない場合に限りPCのデザインも適用可能とする）
～800px：スマホ
*/

/* PC・タブレット・スマホ共通の設定（PC用の設定を記述） */


.fl_left{
	float:left;
}
.fl_right{
	float:right;
}
.clearfix::after{
  content: "";
  display: block;
  clear: both;
}
.column_bg{
	background-color:#FFFFF0;
}
.sub_color{
	color:#EC6A50;
	font-weight:bold;
}

.feature_content{
	line-height:1.8;
}
.feature_content .main_visual{
	width:1000px;
	margin: 0 auto;
}
.feature_content .main_visual .main_genre{
	display: inline-block;
	border:1px solid #5B5B5B;
	border-radius: 20px;
	font-size:14px;
	padding:1px 15px;
	margin-bottom:10px;
}
.feature_content .main_visual .main_shop{
	font-size:19px;
	margin-bottom:3px;
}
.feature_content .main_visual h1{
	font-size:29px;
	font-weight:bold;
	line-height: 1.2;
	margin-bottom:20px;
}
.feature_content .main_visual ul{
	position: absolute;/*絶対配置*/
  	top: 50%;
  	left:50%;
  	transform: translate(-50%,-50%);
  	margin:0;
  	padding:0;
}
.feature_content .main_visual .main_image{
	width:100%;
}
.feature_content .column,
.feature_content .column2{
	width:1000px;
	margin:0 auto;
}
.feature_content .column h2,
.feature_content .column2 h2{
	margin:0 0 40px;
}
.feature_content .column > p,
.feature_content .column2 > p{
	margin:0 0 20px;
}
.feature_content .column > figure,
.feature_content .column2 > figure{
	margin:0 0 40px;
}
.feature_content .column > a,
.feature_content .column2 > a{
	color:#EC6A50;
	font-weight:bold;
}
.feature_content .column .column_inner,
.feature_content .column2 .column_inner{
	display:flex;
	justify-content: space-between;
}
.feature_content .column .column_inner h3,
.feature_content .column2 .column_inner h3{
	color:#F42424;
	font-size:18px;
	font-weight:bold;
	margin:0 0 20px;
}
.feature_content .column .column_inner .txt,
.feature_content .column2 .column_inner .txt{
	width:480px;
}
.feature_content .column .column_inner .img img,
.feature_content .column2 .column_inner .img img{
	width:100%;
}
.feature_content .column h2.delivery_h2,
.feature_content .column2 h2.delivery_h2{
	width:242px;
	font-size:20px;
	font-weight:bold;
	color:#FFF;
	font-family:  "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	text-align:center;
	background-image:url("../images/delivery/h2b.png");
	background-position: center center;
	padding:10px 10px;
	background-size:cover;
	margin:0 0 15px;
}
.feature_content .column h3,
.feature_content .column2 h3{
	font-size:18px;
	font-weight:bold;
	color:#3E3A39;
	font-family:  "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	margin:40px 0 10px;
}


.img_thumb2{
	width:1000px;
	margin:0 auto;
}
.img_thumb2_inner{
	display: flex;
    justify-content: row;
	width:100%;
	margin:0 auto;
}
.img_3item2 figure{
	width:187px;
	margin-right:16px;
}
.img_3item2 figure img{
	width:100%;
}


.img_thumb{
	width:1000px;
	margin:0 auto;
	padding:0 45px;
}
.img_thumb_inner{
	display:flex;
	justify-content: space-between;
	width:100%;
	margin:40px auto;
}
.img_thumb_inner .img_3item figure{
	width:auto;
}
.img_thumb_inner .img_3item a img:hover{
	opacity: 0.7;
}
.img_thumb figure{
	margin:10px;
}
.img_thumb figure img{
	width:100%;
}
.catalog_caption{
	font-size:13px;
	margin:10px;
}


.thumb-item img {
    display: block;
    width: 100%;
    margin: 0 auto;
}
.thumb-item-nav li img {
    display: block;
    width: 98%;
    margin: 0 auto;
}


.slide-arrow1{
  position: absolute;
  top: 50%;
  margin-top: -15px;
}
.prev-arrow1{
  left: -40px;
    cursor: pointer;
	z-index: 1;
}
.next-arrow1{
  right: -40px;
    cursor: pointer;
	z-index: 1;
}
.slide-arrow{
  position: absolute;
  top: 50%;
  margin-top: -15px;
}
.prev-arrow{
  left: 0px;
    cursor: pointer;
	z-index: 1;
}
.next-arrow{
  right: 0px;
    cursor: pointer;
	z-index: 1;
}


.catalog_inner{
	width: 100%;
	border: 0;
	padding: 10px 20px;
}
.catalog_inner .item{
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-around;
	align-items: flex-start;
}
.catalog_inner .item figure{
	width: 30%;
	text-align: center;
}
.catalog_inner .item figure img{
	width: 180px;
}
.catalog_inner .item .catalog_txt{
	width: 50%;
}
.catalog_inner .item .catalog_txt p.catalog_name{
	margin: 0 0 10px;
	font-size: 20px;
	font-weight: bold;
	color: #404040;
}
.catalog_inner .item .catalog_txt p.catalog_description{
	font-size: 14px;
	font-weight: normal;
	color: #000000;
}
.catalog_inner .link{
	margin: 20px auto 0;
	padding: 20px 60px;
	display: flex;
	justify-content: space-evenly;
	align-items: center;
	background: #89c3eb;
}
.catalog_inner .link form.cart{
	width: 30%;
	display: block;
	margin: 0;
	border: 0;
	padding: 0;
}
.catalog_inner .link form.cart button {
	width: 100%;
	display: flex;
	margin: 0;
	border: 0;
	padding: 12px 0;
	justify-content: center;
	align-items: center;
	font-size: 14px;
	font-weight: normal;
	line-height: 1;
	background: #ffffff;
	color: #000000;
	white-space: nowrap;
	filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.6));
}
.catalog_inner .link a{
	width: 30%;
	display: flex;
	margin: 0;
	border: 0;
	padding: 12px 0;
	justify-content: center;
	align-items: center;
	font-size: 14px;
	font-weight: normal;
	line-height: 1;
	background: #ffffff;
	color: #000000;
	white-space: nowrap;
	filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.6));
}
.catalog_inner .link a.cartadd{
	display: flex;
}
.catalog_inner .link a.cartjump{
	display: none;
}
.catalog_inner .link form.cart.executed ~ a.cartadd{
	display: none;
}
.catalog_inner .link form.cart.executed ~ a.cartjump{
	display: flex;
}
.catalog_inner .link a:hover,
.catalog_inner .link button:hover{
	opacity: 0.7;
	cursor: pointer;
}
.catalog_inner .link a img,
.catalog_inner .link button img{
	width: 20px;
	height: 20px;
	margin: 0 10px 0 0;
}


.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}


@keyframes fade-in {
	0% {
		opacity:0;
	}
	100% {
		opacity:1;
	}
}

.tab_wrap{
	width:1000px;
	margin:25px auto;
}
input[type="radio"]{
	display:none;
}
.tab_area{
	display:flex;
	justify-content: space-between;
	font-size:0;
}
.tab_area label{
	width:50%;
	padding:50px 0;
	color:#888;
	background-image:url("../images/courses/tab2.png");
	background-position:center center;
	background-size:100% auto;
	background-repeat: no-repeat;
	text-align:center;
	font-size:18px;
	cursor:pointer;
	transition:ease 0.2s opacity;
}
.tab_area label:hover{
	opacity:0.5;
}
.panel_area{
	background:#fff;
}
.tab_panel{
	width:100%;
	display:none;
}
.tab_panel p{
	font-size:14px;
	letter-spacing:1px;
	text-align:center;
}
#tab1:checked ~ .tab_area .tab1_label{
	background-image:url("../images/courses/tab1.png");
	background-position:center center;
	background-size:100% auto;
	color:#fff;
}
#tab1:checked ~ .panel_area #panel1{
	display:block;

	animation-name:fade-in;
	animation-duration:0.8s;
	animation-iteration-count:1;
}

#tab2:checked ~ .tab_area .tab2_label{
	background-image:url("../images/courses/tab1.png");
	background-position:center center;
	background-size:100% auto;
	color:#fff;
}
#tab2:checked ~ .panel_area #panel2{
	display:block;

	animation-name:fade-in;
	animation-duration:0.8s;
	animation-iteration-count:1;
}



.feature_content .column table{
	width:100%;
}
.feature_content .column tr{
	border-top:1px solid #cac9c9;
	border-bottom:1px solid #cac9c9;
}
.feature_content .column th{
	width:200px;
	background-color:#efefef;
	vertical-align:top;
	padding:15px 20px;
	font-size:16px;
	font-weight:bold;
}
.feature_content .column td{
	padding:15px 20px;
	word-break: break-all;
}


.feature_content .column ul.covid19measures {
	width: 1000px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: left;
}
.feature_content .column ul.covid19measures > li {
	width: 10%;
	margin: 14px 2.5% 0 0;
	line-height: 0;
}
.feature_content .column ul.covid19measures img {
	width: 100%;
}


.shop_info .box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 1000px;
    margin: 0 auto;
}
.shop_info .shop_name{
	font-size:18px;
	font-weight: bold;
	text-align:left;
	padding:20px 0;
}
.shop_info .shop_image{
	width:300px;
}
.shop_info .shop_txt{
	width:675px;
	text-align:left;
}
.bt{
	border-top:1px solid #cac9c9;
}


.map-canvas {
	margin:5px 5px 50px;
	width:100%;
	height:500px;
}
.map_link {
	display:none;
}


.review {
	position: relative;
	margin: 0 4px 20px 4px;
	border: 1px solid #c0c0c0;
	padding: 8px 8px;
	background: #f0f0f0;
	display: flex;
	flex-flow: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
}
.review .review_expdate {
	position: absolute;
	top: 8px;
	right: 8px;
	font-size: 12px;
	font-weight: normal;
}
.review .review_info {
	width: 20%;
	padding: 16px 0 16px 0;
	text-align: center;
}
.review .review_avatar {
	width: 60px;
	height: 60px;
	margin: 0 auto;
	border: 0;
}
.review .review_avatar img {
	width: 60px;
	height: 60px;
}
.review .review_user {
	margin: 12px 0 0 0;
	font-size: 13px;
	font-weight: bold;
	line-height: 1;
}
.review .review_score {
	margin: 12px 0 0 0;
	font-size: 13px;
	font-weight: bold;
	line-height: 1;
}
.review .review_comment {
	width: 78%;
	margin: 32px 0 8px 0;
	font-size: 13px;
	font-weight: normal;
	line-height: 2;
}
#review_extend .review_extend_inner {
	display: none;
}
#review_extend .review_extend_arrow {
	margin: 0 4px 0 4px;
	padding: 4px 0;
	background: #808080;
	text-align: center;
	cursor: pointer;
}
#review_extend .review_extend_arrow:before {
	content: '>';
	display: inline-block;
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
	color: #ffffff;
	transform: rotate(90deg) scale(1, 2);
	transition: transform 0.5s ease;
}
#review_extend.open .review_extend_arrow:before {
	transform: rotate(270deg) scale(1, 2);
}


#osusume_box div:nth-child(3n+2):last-child{
	margin-right: 350px;
}
.osusume{
	width:300px;
}
.osusume a{
	display:block;
}
.osusume img{
	width:300px;
}


.float_catalog {
	display: none;
	width: 0;
	height: 0;
}


/* タブレット・スマホ共通の設定（スマホ用の設定を記述、ただしタブレットに適用したくない場合はスマホ専用欄に記述） */
@media print, screen and (max-width: 1199px) { 
	.fl_left{
		float:inherit;
	}
	.fl_right{
		float:inherit;
	}	

	.feature_content{
		width:100%;
	}
	.feature_content .main_visual {
		width:96%;
		text-align: left;
		margin:4.95vw auto;
	}
	.feature_content .main_visual .main_genre{
		margin-bottom:2.75vw;
		border-radius: 5.5vw;
		padding:0.275vw 2.75vw;
		font-size:3.025vw;
	}
	.feature_content .main_visual .main_shop{
		font-size:5.225vw;
		margin-bottom:0.825vw;
	}
	.feature_content .main_visual h1{
		font-size:6.6vw;
		font-weight:bold;
		margin-bottom:5.5vw;
		padding:2.75vw 0;
	}
	.feature_content .main_visual .main_image{
		width:100%;
	}
	.feature_content .main_visual ul {
	   position: absolute;
		top: 50%;
		left: 20%;
		transform: translate(-20%,-50%);
		margin: 0;
		padding: 0;
	}
	.feature_content .column,
	.feature_content .column2 {
		width: 96%;
    	margin: 0 auto 11vw;
	}
	.feature_content .column h2{
		margin:0 0 11vw;
	}
	.feature_content .column h2 img{
		width:100%;
	}
	.feature_content .column h3{
		margin:11vw 0 2.75vw;
		font-size:4.95vw;
		font-weight:bold;
	}

	.feature_content .column .column_inner .txt{
		width:100%;
	}
	.feature_content .column .column_inner .img{
		width:100%;
	}
	.feature_content .column h2.delivery_h2 {
    	width: 200px;
    	font-size: 18px;
		padding: 5px 0;
	}
	.feature_content .column2 {
	    width: 100%;
	}


	.img_thumb {
		width: 100%;
		background-color:#EEEEEF;
		border:0;
	}
	.img_thumb_inner {
	   margin: 0 auto;
	   padding-top: 10px;
	}
	.img_thumb  .img_3item figure{
		width:35%;
		float: left;
	}
	
	.img_thumb .img_3item figure img{
		width:100%;
	}
	.catalog_caption{
		float: right;
		width:50%;
	}


	.catalog_inner{
		width: 100%;
		padding: 0;
	}
	.catalog_inner .item{
		width: 100%;
		margin: 0 auto;
		display: flex;
		flex-flow: column;
		justify-content: space-evenly;
		align-items: center;
	}
	.catalog_inner .item figure{
		width: 50%;
	}
	.catalog_inner .item figure img{
		width: 90%;
	}
	.catalog_inner .item .catalog_txt{
		width: 100%;
	}
	.catalog_inner .item .catalog_txt p.catalog_name{
		margin: 3vw 0 3vw;
		font-size: 5vw;
		font-weight: bold;
		line-height: 1.2;
	}
	.catalog_inner .item .catalog_txt p.catalog_description{
		font-size: 3.5vw;
		font-weight: normal;
		line-height: 1.8;
	}
	.catalog_inner .link{
		margin: 4vw auto 0;
		padding: 4vw 2vw;
	}
	.catalog_inner .link form.cart{
		width: 32%;
		height: 14vw;
		margin: 0;
		border: 0;
		padding: 0;
	}
	.catalog_inner .link form.cart button{
		height: 14vw;
		margin: 0;
		border: 0;
		padding: 3vw 4vw;
		font-size: 3.5vw;
		font-weight: normal;
		white-space: normal;
		line-height: 1.2;
		text-align: center;
		filter: drop-shadow(1vw 1vw 1vw rgba(0, 0, 0, 0.6));
	}
	.catalog_inner .link a{
		width: 32%;
		height: 14vw;
		margin: 0;
		border: 0;
		padding: 3vw 4vw;
		font-size: 3.5vw;
		font-weight: normal;
		white-space: normal;
		line-height: 1.2;
		text-align: center;
		filter: drop-shadow(1vw 1vw 1vw rgba(0, 0, 0, 0.6));
	}
	.catalog_inner .link a:hover,
	.catalog_inner .link button:hover{
		opacity: 0.7;
		cursor: pointer;
	}
	.catalog_inner .link a img,
	.catalog_inner .link button img{
		width: 5vw;
		height: 5vw;
		margin: 0 2vw 0 -2vw;
	}


	.youtube {
	  margin-bottom: 2.75vw;
	}


	.tab_wrap {
	    width: 100%;
	}
	.tab_area label {
		padding: 11vw 0;
		background-image:url("../images/faq/tab2_sp.png");
		font-size: 4.125vw;
	}
	.tab_panel p{
		font-size:3.85vw;
	}
	#tab1:checked ~ .tab_area .tab1_label{
		background-image:url("../images/faq/tab1_sp.png");
	}
	#tab2:checked ~ .tab_area .tab2_label{
		background-image:url("../images/faq/tab1_sp.png");
	}
	#tab3:checked ~ .tab_area .tab3_label{
		background-image:url("../images/faq/tab1_sp.png");
	}
	.tab_area label:hover{
		opacity:1.0;
	}
	.tab_area label:active{
		opacity:0.5;
	}


	.feature_content .column th{
		width:35%;
		padding-left:2.75vw;
		padding-right:2.75vw;
		font-size:4.263vw;
	}
	.feature_content .column td{
		padding-left:2.75vw;
		padding-right:2.75vw;
		font-size:3.713vw;
	}


	.feature_content .column h3.covid19measures {
		font-size: 4.5vw;
	}
	.feature_content .column ul.covid19measures {
		width: 100%;
	}
	.feature_content .column ul.covid19measures > li {
		width: 27.5%;
		margin: 3vw 2.8% 0 2%;
	}


	.shop_info .box {
		width: 100%;
		margin: 0 auto;
	}
	.shop_info .shop_name{
		font-size:4.95vw;
		font-weight: bold;
		padding:5.5vw 0;
	}
	.shop_box .shop_image_sp img{
		width:100%;
	}
	.shop_box .shop_txt{
		width:100%;
		margin-bottom:6.875vw;
	}


	.map-canvas {
		margin:1.375vw auto;
		width:100%;
		height:75vw;
	}
	.map_link {
		display:block;
		margin:2.75vw 1.375vw 13.75vw;
		background: url(../images/courses/googlemap.svg) top right no-repeat;
		background-size:6.6vw 6.6vw;
		padding:0 6.6vw 0 0;
		text-align:right;
		font-size:4.4vw;
	}


	.review {
		margin: 0 0 4vw 0;
		padding: 2vw 4vw;
		display: flex;
		flex-flow: column;
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-items: flex-start;
	}
	.review .review_expdate {
		top: 4vw;
		right: 4vw;
		font-size: 3vw;
		font-weight: normal;
	}
	.review .review_info {
		width: 100%;
		margin: 0;
		padding: 0;
		text-align: left;
	}
	.review .review_avatar {
		float: left;
		width: 12vw;
		height: 12vw;
		margin: 0;
	}
	.review .review_avatar img {
		width: 12vw;
		height: 12vw;
	}
	.review .review_user {
		float: left;
		margin: 0;
		padding: 4vw 0 4vw 2vw;
		font-size: 4vw;
		font-weight: bold;
		line-height: 1;
	}
	.review .review_score {
		clear: both;
		margin: 0;
		padding: 4vw 0 0 0;
		font-size: 4vw;
		font-weight: bold;
		line-height: 1;
	}
	.review .review_comment {
		width: 100%;
		margin: 4vw 0 2vw 0;
		font-size: 3.5vw;
		font-weight: normal;
		line-height: 2;
	}
	#review_extend .review_extend_inner {
	}
	#review_extend .review_extend_arrow {
		margin: 0;
		padding: 1vw 0;
	}
	#review_extend .review_extend_arrow:before {
		font-size: 4vw;
		font-weight: normal;
		line-height: 1;
	}
	#review_extend.open .review_extend_arrow:before {
	}

	.osusume{
		width:48%;
	}
	.osusume:nth-child(n+3){
		display:none;
	}
	.osusume img{
		width:100%;
	}


	.float_catalog {
		display: none;
		position: relative;
		width: 100%;
		height: 16vw;
		left: 0;
		right: 0;
		bottom: 0;
		overflow: hidden;
		background: #202020;
		pointer-events: auto;
	}
	.float_catalog .float_catalog_flex {
		display: flex;
		width: 100%;
		height: 16vw;
		flex-flow: row;
		flex-wrap: nowrap;
		justify-content: space-evenly;
		align-items: center;
	}
	.float_catalog .float_catalog_flex .left {
		width: 42vw;
	}
	.float_catalog .float_catalog_flex .right {
		width: 42vw;
	}
	.float_catalog p.catalog {
		display: inline;
		margin: 0;
		border: 0;
		padding: 0;
		font-size: 3.3vw;
		font-weight: normal;
		line-height: 1.2;
		color: #e0e0e0;
		white-space: nowrap;
	}
	.float_catalog p.price {
		display: inline;
		margin: 0;
		border: 0;
		padding: 0;
		font-size: 3.5vw;
		font-weight: normal;
		line-height: 1.2;
		color: #e0e0e0;
		white-space: nowrap;
	}
	.float_catalog p.price .tax {
		font-size: 3vw;
		font-weight: normal;
		line-height: 1.2;
		color: #e0e0e0;
		white-space: nowrap;
	}
	.float_catalog form.cart {
		height: 10vw;
		margin: 0;
		border: 0;
		padding: 0;
	}
	.float_catalog form.cart button {
		width: 100%;
		height: 10vw;
		margin: 0;
		border: 0;
		padding: 3vw 4vw;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 3.5vw;
		font-weight: normal;
		white-space: normal;
		line-height: 1.2;
		background: #ffffff;
		color: #000000;
		white-space: nowrap;
		text-align: center;
		filter: drop-shadow(1vw 1vw 1vw rgba(0, 0, 0, 0.6));
	}
	.float_catalog button:hover {
		opacity: 0.7;
		cursor: pointer;
	}
	.float_catalog button img {
		width: 5vw;
		height: 5vw;
		margin: 0 2vw 0 -2vw;
	}
}


/* スマホ専用の設定（スマホ用の設定の内でタブレットに適用したくない設定） */
@media screen and (max-width: 800px) { 
}
