@charset "UTF-8";

body {
	text-align: center;
	font-family: var(--ff_got);
	font-weight: 400;
	font-style: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: var(--color_base);
	font-size: 16px;
	letter-spacing: 0.05em;
	font-feature-settings: "palt" 1;
	line-height: 2.2em;
	padding: 0;
	margin: 0;
	background: #fdfce0;
	-webkit-text-size-adjust: 100%;
	font-optical-sizing: auto;
}
div,
dl,dt,dd,ul,ol,li,
h1,h2,h3,h4,h5,h6,
pre,form,fildset,p,blockquote,
header,footer,nav,main{
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	font-style:normal;
	box-sizing: border-box;
}
h1,h2,h3,h4,h5,h6{
	font-weight: normal!important;
}
img{
    max-width:100%;
    height:auto;
    width:auto\9;
	border-top-style:none;
	border-right-style:none;
	border-bottom-style:none;
	border-left-style:none;
	vertical-align:top;
	display:block;
	margin:auto;
}
table {
    font-size:inherit;
	width:100%;
	border-collapse:separate;
	border-spacing:0;
}
address{font-style:normal;}
ul,ol{list-style:none;}
iframe{display:block;}
i{
	font-weight:normal !important;
	display: inline-block;
	vertical-align: middle;
}
#pagebody{max-height:100%;}

a {
	color: inherit;
	text-decoration: none;
	outline: 0;
	transition: color 0.8s, background-color 0.8s;
}
a:hover {
	transition: color 0.4s, background-color 0.4s;
}
.clearfix:after {
  content: ".";  
  display: block; 
  clear: both;
  height: 0;
  visibility: hidden;
}
.clearfix {
  min-height: 1px;
}
* html .clearfix {
  height: 1px;
}
.fw_bold{font-weight:bold!important;}
.fw_normal{font-weight:normal;}	
.txt_al_l{text-align:left;}
.txt_al_r{text-align:right;}
.txt_al_c{text-align:center;}
.sp_txt_l{text-align:center;}
.flt_l{float:left;}
.flt_r{float:right;}

.blocklink,
.blocklink_out,
.blocklink_ank{
	cursor: pointer;
}
.tel_border a {text-decoration: underline;}

.flex_box{
	display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
}
.flex_box.center{
    justify-content: center;
}
.com_hidden{
	overflow: hidden!important;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
body {
	line-height: 1.9em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
/* スマホのときはビューポートを基準にサイズ調節する */
/* スマホ時：emまたは%で指定する */
/* スマホ以外でビューポート基準にするときは、その都度「vw」で指定する */
body {
	font-size: 4vw;
	line-height: 1.8em;
}
img {
	width: 100% !important;
	max-width: initial !important;
}
.sp_txt_l{text-align:left;}	
.sp_txt_c{text-align:center;}	
}







/*共通
---------------------------------------------------------*/
.max_1536 {
	max-width: 1536px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}
.max_width {
	width: var(--content_width);
	margin-left: auto;
	margin-right: auto;
}
.w1536{
	width: var(--content_width);
	max-width: 1536px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}
.w1373{
	width: var(--content_width);
	max-width: 1373px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}
.w1340{
	width: var(--content_width);
	max-width: 1340px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}
.w1320{
	width: var(--content_width);
	max-width: 1320px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}
.w1300{
	width: var(--content_width);
	max-width: 1300px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}
.w1100{
	width: var(--content_width);
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}


/*フォント*/
.ft_min {font: var(--font_min);}
.ft_eng {font: var(--font_eng);}

/*色*/
.white {color: var(--color_white);}
.yellow {color: var(--color_yellow);}

/*背景色*/
.bg_white {background: var(--color_white);}
.bg_yellow {background: var(--color_yellow);}

/*com_txt_link*/
.com_txt_link {
	text-decoration: underline;
}
.com_txt_link:hover {
	text-decoration: none;
}

/*角丸*/
.radius8 {border-radius: var(--radius8);}




/* 文字サイズ
---------------------------------------------------------*/
.min48,
.min32,
.min24,
.min20{
	font: var(--font_min);
}
.eng116,
.eng110,
.eng90,
.eng35,
.eng20,
.eng18{
	font: var(--font_eng);
}

.fs17,
.fs18,
.fs20,
.fs23,
.fs24,
.fs32,
.fs35,
.fs37,
.fs48,
.fs56,
.fs72{
	font-weight: bold!important;
}
.fs15{
	font-size:95%;
}
.fs17{
	font-size:min(110%,2vw);line-height: 1.5em;
}
.fs18{
	font-size:min(115%,2vw);line-height: 1.5em;
}
.fs20{
	font-size:min(130%,2vw);letter-spacing: 0.12em;line-height: 1.5em;
}
.fs23{
	font-size:min(140%,2.2vw);letter-spacing: 0.12em;line-height: 1.5em;
}
.fs24{
	font-size:min(155%,2.35vw);letter-spacing: 0.12em;line-height: 1.5em;
}
.fs32{
	font-size:min(200%,2.6vw);letter-spacing: 0.05em;line-height: 1.3em;
}
.fs35{
	font-size:min(230%,3vw);letter-spacing: 0.12em;line-height: 1.5em;
}
.fs37{
	font-size:min(240%,3.8vw);letter-spacing: 0.12em;line-height: 1.5em;
}
.fs48{
	font-size:min(300%,4vw);letter-spacing: 0.12em;line-height: 1.5em;
}
.fs56{
	font-size:min(350%,4.3vw);letter-spacing: 0.12em;line-height: 1.5em;
}
.fs72{
	font-size:min(470%,5.2vw);letter-spacing: 0.05em;line-height: 1.4em;
}

.min48{
	font-size: min(300%,3.8vw);letter-spacing: 0.1em;line-height: 1.4em;
}
.min32{
	font-size: min(210%,3vw);letter-spacing: 0.05em;line-height: 1.4em;
}
.min24{
	font-size: min(155%,2.8vw);letter-spacing: 0.05em;line-height: 2em;
}
.min20{
	font-size: min(125%,2vw);line-height:1.4em;
}

.eng116{
	font-size:min(760%,8vw);letter-spacing: 0.05em;line-height: 1.1em;
}
.eng110{
	font-size:min(680%,8vw);letter-spacing: 0.03em;line-height: 1.1em;
}
.eng90{
	font-size:min(560%,7.5vw);letter-spacing: 0.03em;line-height: 1.1em;
}
.eng35{
	font-size:min(220%,3vw);
}
.eng20{
	font-size:min(130%,2.5vw);
}
.eng18{
	font-size:min(120%,1.5vw);
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.fs17{
	font-size:100%;
}
.fs18{
	font-size:105%;
}
.fs20{
	font-size:105%;letter-spacing: 0.1em;
}
.fs23{
	font-size:110%;letter-spacing: 0.1em;
}
.fs24{
	font-size:110%;letter-spacing: 0.1em;
}
.fs32{
	font-size:120%;letter-spacing: 0.1em;line-height: 1.6em;
}
.fs35{
	font-size:100%;letter-spacing: 0.05em;
}
.fs37{
	font-size:165%;letter-spacing: 0.15em;
}
.fs48{
	font-size:150%;letter-spacing: 0.1em;
}
.fs56{
	font-size:155%;letter-spacing: 0.1em;
}
.fs72{
	font-size:200%;letter-spacing: 0.05em;
}

.min48{	font-size: 170%;line-height: 1.6em;}
.min32{	font-size: 145%;line-height: 1.6em;}
.min24{	font-size: 125%;}
.min20{	font-size: 125%;}

.eng116{font-size:215%;}
.eng110{font-size:350%;}
.eng90{font-size:350%;}
.eng35{font-size:140%;}
.eng20{font-size:110%;}
.eng18{font-size:110%;}
}








/*アニメーション
---------------------------------------------------------*/
/*その場でフェードしながら出てくる*/
.fadein {
	opacity: 0;
	transition: all .5s ease-out;
}
span.fadein {
	display: block;
}
.anime_on .fadein {
	opacity: 1;
}
.fadein2 {
	opacity: 0;
	transition: all 1.5s ease-out;
}
span.fadein2 {
	display: block;
}
.anime_on .fadein2 {
	opacity: 1;
}

/*下からフェードしながら出てくる*/
.fadeup {
	opacity: 0;
	transform: translateY(40px);
	transition: all 2s cubic-bezier(0.22, 1, 0.36, 1);
}
span.fadeup {
	display: block;
}
.anime_on .fadeup {
	opacity: 1;
	transform: translateY(0px);
}

/*上からフェードしながら出てくる*/
.fadedown {
	opacity: 0;
	transform: translateY(-50px);
	transition: all 1.5s cubic-bezier(0.22, 1, 0.36, 1);
}
span.fadedown {
	display: block;
}
.anime_on .fadedown {
	opacity: 1;
	transform: translateY(0px);
}

/*その場でズームしながら出てくる*/
.fadezoom {
	opacity: 0;
	transform: scale(0.8);
	transition: all 1s .5s;
}
span.fadezoom {
	display: block;
}
.anime_on .fadezoom {
	opacity: 1;
	transform: scale(1.0);
}

.anime_dilay_08 {transition-delay: .8s;}

.anime_dilay_14 {transition-delay: 1.2s;}
.anime_dilay_16 {transition-delay: 1.6s;}
.anime_dilay_20 {transition-delay: 2s;}

.anime_dilay_25 {transition-delay: 2.5s;}
.anime_dilay_30 {transition-delay: 3s;}


/*ふわふわ揺れる*/
.anm_fuwa {
	display: block;
	animation: fuwafuwa 4s infinite 0s alternate;
}
@keyframes fuwafuwa {
  0% {
    transform: translate(0, 0) rotate(-3deg);
  }
  5% {
    transform: translate(0, 0) rotate(-3deg);
  }
  50% {
    transform: translate(0, -1em) rotate(0deg);
  }
  95% {
    transform: translate(0, 0) rotate(3deg);
  }
  100% {
    transform: translate(0, 0) rotate(3deg);
  }
}

/*左右に傾き*/
.ani_yura {
	display: block;
	animation-name: yurayura;
	animation-duration: 4s !important;
	animation-delay: 0s !important;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
}
@keyframes yurayura {
	0% {
		transform: rotate(0deg);
	}
	25% {
		transform: rotate(-6deg);
	}
	50% {
		transform: rotate(0deg);
	}
	75% {
		transform: rotate(6deg);
	}
	100% {
		transform: rotate(0deg);
	}
}

/*跳ねる*/
.anime_on .ani_pyon {
	display: block;
	animation-name: kobito_pyonpyon;
	animation-duration: 5.0s !important;
	animation-delay: 0s !important;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
}
.ani_pyonpyon {
	animation: pyonpyon 6s infinite ease;
}
@keyframes pyonpyon {
	0% {
		transform: scale(1.0, 1.0) translateY(0%);
	}
	20% {
		transform: scale(1.0, 1.0) translateY(0%);
	}
	23% {
		transform: scale(1.05, 0.95) translateY(3%);
	}
	25% {
		transform: scale(1.0, 1.0) translateY(0%);
	}
	28% {
		transform: scale(0.95, 1.05) translateY(-15%);
	}
	31% {
		transform: scale(1.0, 1.0) translateY(0%);
	}
	32% {
		transform: scale(1.03, 0.97) translateY(3%);
	}
	33% {
		transform: scale(1.0, 1.0) translateY(0%);
	}
	100% {
		transform: scale(1.0, 1.0) translateY(0%);
	}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
}


/*パーツ
---------------------------------------------------------*/
/*swiper共通設定*/
.swiper {
    overflow: visible !important;
}
.swip_ticker .swiper-wrapper {
	transition-timing-function: linear !important;	/*滑らかに流れ続ける*/
}
.swiper-fade .swiper-slide {
    transition-property: opacity !important;	/* フェードモード時 共通調整 */
}

/*開閉*/
.open_box {
    display: none;
}







/* header
---------------------------------------------------------*/
.h_box{
	position: absolute;
	top: min(30px,2.5vw);
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 95%;
	z-index: 500;
}
.h_box,
.drawer-wrap{
	font-size:min(100%,1.3vw);
}
header{
	display: flex;
    justify-content: space-between;
    align-items: center;	
}
header .h_left{
	width: 55%;
	max-width: 785px;
}
header .h_right{
	width: 43%;
	max-width:582px;
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.h_box{
	top: 4vw;
}
header{
	width:78%;
}
header .h_left{
	width:100%;
}
header .h_right{
	display: none;
}
}



/* m_nav_area
---------------------------------------------------------*/
.m_nav_area {
	max-width: 1218px;
	border-radius: 50px;
	margin: min(30px,2.5vw) auto 0;
	padding: 0 3em;
	background: var(--color_white);
	box-sizing: border-box;
	box-shadow: 0 0 20px -10px rgba(109,80,0,0.5); 
	font-size:min(100%,1.3vw);
}
.m_nav{
	display: flex;
    justify-content: space-between;
    align-items: center;
	font-weight: bold!important;
}
.m_nav li a{
	position: relative;
	display: block;
	font-size:110%;
	line-height: 1.5em;
	letter-spacing: 0.15em;
	padding: 1.5em 0;
}
.m_nav li a::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/common/m_nav_active.svg")no-repeat bottom center;
	background-size: 100% auto;
	width: 1.2em;
	aspect-ratio:22 / 4;
	bottom: 1.2em;
	left: 0;
	right: 0;
	margin: 0 auto;
	opacity: 0;
	transition: 0.4s;
}
.m_nav li a:hover::before{
	opacity: 1;
	transition: 0.4s;
}


/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.m_nav_area{
	display: none;
}
}







/*スクロールメニュー
---------------------------------------------------------*/
#scl_header {
	display: block!important;
	position: fixed;
	z-index: 500;
	left: 0;
	top: 0;
	transform: translateY(-100%);
	width: 100%;
	padding: min(30px,2vw) min(2em,1vw) 0;
	box-sizing: border-box;
	font-size:min(100%,1.3vw);
}
#scl_header::before{
	position: absolute;
	display: block;
	content: "";
	background:var(--color_white);
	background-size: 100%;
	width: 100%;
	height: calc(100% - 2.8em);
	top:0;
	left: 0;
	filter: drop-shadow(0 0 10px rgba(0,0,0,0.1));
}
#scl_header.is-show {
	display: block;
	transform: translateY(0);
	opacity: 1;
    animation: sclAnimation 1.0s;
}
#scl_header .scl_header_flex {
	position: relative;
	z-index: 2;
	display: flex;
    justify-content: space-between;
	align-items: start;
	padding-bottom: 1em;
}
#scl_header .scl_header_flex .flex_l{
	width: 62%;
	text-align: center;
	padding-top: .5em;
}
#scl_header .scl_header_flex .flex_l .m_nav{
	max-width: 800px;
	margin: 0 auto;
}
#scl_header .scl_header_flex .flex_l .m_nav li a{
	font-size:105%;
	padding: 0;
	line-height: 1.2em;
	height: 2em;
	display: flex;
    justify-content: space-between;
    align-items: center;	
}
#scl_header .scl_header_flex .flex_l .m_nav li a::before{
	bottom: -1em;
}
#scl_header .scl_header_flex .flex_r{
	width: 37%;
	max-width: 582px;
	font-size:80%;
	text-align: center;
}
#scl_header .scl_header_flex .flex_r .com_tel{
	display: inline-block;
	margin: 0 auto .3em;
	font-size: 280%;
}
#scl_header .scl_header_flex .flex_r .com_tel span{
	padding-left: 1.3em;
}
#scl_header .scl_header_flex .flex_r .com_tel span::before{
	font-size:100%;
}
#scl_header .scl_header_flex .flex_r .com_contact > div a{
	height: min(5.5em,5vw)!important;
	filter: drop-shadow(0 0 5px rgba(109,80,0,0.2));
}
#scl_header .scl_header_flex .flex_r .com_yoyaku span:nth-child(1){
	margin-bottom: -2em;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1550px) {
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#scl_header {display: none !important;}
}

/* スクロールメニューアニメーション */
@keyframes sclAnimation {
	0% {
		transform: translateY(-100%);
	}
	100% {
		transform: translateY(0);
	}
}





/*スマホフッター
---------------------------------------------------------*/
@media only screen and (min-width: 768px) {
#sp_footer {display: none !important;}
}
#sp_footer {
	position: fixed;
	width: 100%;
	left: 0;
	bottom: 0;
	z-index: 999;
	text-align: center;
}
#sp_footer ul {
	display: flex;
    justify-content: space-between;
	background: var(--color_base);
}
#sp_footer ul li{
	width: 20%;
}
#sp_footer ul li:nth-child(1){background: var(--color_base);}
#sp_footer ul li:nth-child(2){background: var(--color_yellow3);}
#sp_footer ul li:nth-child(3){background:var(--color_white);}
#sp_footer ul li:nth-child(4){background: var(--color_yellow2);}
#sp_footer ul li:nth-child(5){background: #afd047;}

/* 共通
---------------------------------------------------------*/
.com_btm_03em{
	margin-bottom: .3em;
}

.com_btn1_list{
	display: flex;
    justify-content: center;
	flex-wrap: wrap;
}
.com_btn1_list > .com_btn1{
	display: inline-block;
	margin-right: 1.5em;
}
.com_btn1_list > .com_btn1:last-child{
	margin-right: 0;
}

.com_btn1{
	display: block;
	text-align: center;
}
.com_btn1 a{
	position: relative;
	display: inline-block;
	background: var(--color_white);
	border:1px solid var(--color_base);
	padding: .8em 3em .8em 1.5em;
	box-sizing: border-box;
	border-radius: 2em;
	font-size:min(125%,2vw);
	font-weight: bold!important;
	line-height: 1.5em;
	letter-spacing: 0.15em;
}
.com_btn1 a i{
	position: absolute;
	top:52%;
	transform: translateY(-50%);
	right: 1em;
	background: var(--color_base);
	color: var(--color_white);
	border-radius: 50%;
	width: 1em;
	height: 1em;
	display: flex;
    justify-content: center;
    align-items: center;	
	line-height: 1em!important;
	font-size:120%;
}
.com_btn1 a:hover{
	background: var(--color_base);
	color: var(--color_white);
}
.com_btn1 a:hover i{
	background: var(--color_white);
	color: var(--color_base);
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) {
.com_btn1 a{
	font-size: 100%;
} 
.com_btn1_list{
	display: block;
	text-align: center;
}
.com_btn1_list > .com_btn1{
	margin: 0 auto 1em!important;
}
.com_btn1_list > .com_btn1:last-child{
	margin-bottom: 0!important;
}
}





/* drawer-content-inbox
---------------------------------------------------------*/
.drawer-content-erea{
	width: 92%;
	margin-left: auto;
	margin-right: 0;
	background: #644d3f;
}
.drawer-content-inbox{
	width: 90%;
	margin: 0 auto;
	text-align: left;
	padding: 10vw 0;
	font-size: 300%!important;
}

.drawer-content-inbox .dr_list1{
	width: 90%;
	margin: 0 auto;
}
.drawer-content-inbox .dr_list1 li{
	margin-bottom: 1.3em;
}
.drawer-content-inbox .dr_list1 li a{
	position: relative;
	padding-left: 1.5em;
	letter-spacing: 0.15em;
	color:var(--color_white);
	font-weight: bold!important;
}
.drawer-content-inbox .dr_list1 li a::before{
	position: absolute;
	font-family: 'fontello';
	content: '\e800';	
	left: 0;
	top:50%;
	transform: translateY(-50%);
	font-size: 100%;
	background:var(--color_white);
	color: var(--color_base);
	border-radius: 50%;
	width: 1em;
	aspect-ratio: 1 / 1;
	display: flex;
    justify-content: center;
    align-items: center;
	line-height: 1em;
	letter-spacing: normal;
}

.drawer-content-inbox .dr_list2{
	display: flex;
    justify-content: space-between;
	margin: 0 auto 12vw;
}
.drawer-content-inbox .dr_list2 li{
	width: 49%;
}
.drawer-content-inbox .dr_list2 li a{
	position: relative;
	background: #43322d;
	border: 2px solid var(--color_white);
	padding:1em;
	box-sizing: border-box;
	color:var(--color_white);
	font-weight: bold!important;
	border-radius: 5em;
	display: block;
	line-height: 1em;
	font-size:95%;
}
.drawer-content-inbox .dr_list2 li:nth-child(1) a::before{
	position: absolute;
	font-family: 'fontello';
	content: '\e800';	
	right: 1em;
	top:50%;
	transform: translateY(-50%);
	font-size: 100%;
	background: var(--color_white);
	color: var(--color_base);
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	display: flex;
    justify-content: center;
    align-items: center;
	line-height: 1em;
	letter-spacing: normal;
}
.drawer-content-inbox .dr_list2 li:nth-child(2) a::before{
	position: absolute;
	font-family: 'fontello';
	content: '\e801';	
	right: 1.4em;
	top: 52%;
	transform: translateY(-50%);
	font-size: 60%;
	color:var(--color_white);
	width: 1em;
	aspect-ratio: 1 / 1;
	line-height: 1em;
	letter-spacing: normal;
}
.drawer-content-inbox .dr_list2 li:nth-child(2) a span{
	position: relative;
	padding-left: 1.4em;
	box-sizing: border-box;
}
.drawer-content-inbox .dr_list2 li:nth-child(2) a span::before{
	position: absolute;
	font-family: 'fontello';
	content: '\e805';	
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 102%;
	color: var(--color_white);
	width: 1em;
	aspect-ratio: 1 / 1;
	line-height: 1em;
	letter-spacing: normal;
}

.drawer-content-inbox .dr_index1{
	font-size:105%;
	font-weight: bold!important;
	text-align: center;
	alignment-baseline: 1em;
	padding: .06em .5em .01em;
	box-sizing: border-box;
	border-radius: 2em;
	background: var(--color_yellow2);
	margin-bottom: 1em	
} 
.drawer-content-inbox .com_tel{
	font-size:190%;
	color:var(--color_white);
	margin-bottom: .5em;
}
.drawer-content-inbox .com_tel span::before{
	background: var(--color_white);
	color:var(--color_base);
}
.drawer-content-inbox .dr_txt1{
	text-align: center;
	color: var(--color_white);
	line-height: 1.6em;
	margin-top: 1em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
}





/* com_soudan
---------------------------------------------------------*/
#soudan1 .com_soudan_bg{
	background: linear-gradient(to bottom,  #fffbc4 0%,#fffbc4 51%,#ff947b 51%,#ff947b 100%);
}
#soudan2 .com_soudan_bg{
	background: linear-gradient(to bottom,  #8b6240 0%,#8b6240 50%,#fdfce0 50%,#fdfce0 100%); 
}
#soudan3{
	margin-top: min(-150px,-14vw);
}
#soudan1 .bnr,
#soudan2 .bnr{
	display: none;
}

.com_soudan{
	position: relative;
	background: var(--color_yellow);
	border-radius: var(--radius100);
	box-shadow:
	0 0 min(100px,10vw) min(-50px,-5vw) rgba(234,139,3,1),
	0 0 min(100px,10vw) min(-50px,-5vw) rgba(234,139,3,1);
	padding: min(70px,6vw) 0 min(65px, 5vw);
}
.com_soudan .icon{
	position: absolute;
	top:min(-40px,-1vw);
	left: 0;
	right: 0;
	margin: 0 auto;
	width: min(103px,9vw);
	aspect-ratio: 103 / 82;
}
.com_soudan .w1536{
	text-align: center;
}
.com_soudan .index .fs23{
	margin-bottom: min(.5em,0.5vw);
}
.com_soudan .index .fs72{
	margin-bottom: min(.3em,1.5vw);
}

/*attention*/
.com_soudan .attention{
	background: rgba(255,255,255,0.3);
	border-radius: var(--radius40);
	padding: min(30px,2vw) 5%;
	box-sizing: border-box;
	max-width: 956px;
	margin: min(20px,2vw) auto 0;
}
.com_soudan .attention_inbox{
	max-width: 750px;
	margin: 0 auto;
	display: flex;
    justify-content: space-between;
    align-items: center;	
}
.com_soudan .attention .fs18{
	width: min(7.8rem,13vw);
	aspect-ratio: 1 / 1;
	background: url("../images/top/soudan_abs2.svg") no-repeat center center;
	background-size: 100% auto;
	font-weight: bold!important;
	display: flex;
    justify-content: center;
    align-items: center;	
}
.com_soudan .attention .com_attention{
	text-align: left;
	width: calc(100% - min(10rem,15vw));
}
.com_attention li{
	position: relative;
	padding-left: 1em;
	box-sizing: border-box;
	line-height: 1.8em;
}
.com_attention li::before{
	position: absolute;
	display: block;
	content: "・";
	top:0;
	left: 0;
}
.com_soudan .bnr{
	width: 60%;
	margin: min(30px,3vw) auto 0;
}

/*com_contact*/
.com_contact{
	display: flex;
    justify-content: space-between;
    align-items: center;	
}
header .h_right .sp_tel_btn{
	margin-bottom: .5em;
}
dl.sp_tel_btn{
	display: flex;
    justify-content: center;
    align-items: center;
}
.sp_tel_btn dt{
	font-size: min(110%,1vw);
	line-height: 1.5em;
	font-weight: bold!important;
	margin-right: 1em;
}
.sp_tel_btn dd{
	font-size: 240%;
}
.sp_tel_btn dd::before{
	background:var(--color_white);
	color:var(--color_base);
}

.com_tel {
	font-size:min(220%,4vw);
	line-height: 1em;
	letter-spacing: 0.08em;
}
.com_tel span{
	position: relative;
	padding-left: 1.5em;
	box-sizing: border-box;
}
.com_tel span::before{
	position: absolute;
	font-family: 'fontello';
	content: '\e802';	
	left: 0;
	font-size:120%;
	top: 48%;
	transform: translateY(-50%);
	background: var(--color_base);
	color: var(--color_white);
	border-radius: 50%;
	width: 1em;
	aspect-ratio: 1 / 1;
	display: flex;
    justify-content: center;
    align-items: center;	
}
header .com_tel span::before{
	background:var(--color_white);
	color:  var(--color_base);
}

.com_yoyaku a,
.com_mail a,
.com_monshin a,
.com_shinsatsu a{
	position: relative;
	font-weight: bold!important;
	border-radius: var(--radius20);
	height: min(4.5em,5vw);
	width: 100%;
	display: flex;
    justify-content: center;
    align-items: center;	
	flex-wrap: wrap;
	transition: 0.4s!important;
	text-align:center;
	padding:0 .5em;
	box-sizing: border-box;
}
.com_contact.type1 .com_yoyaku a,
.com_contact.type1 .com_mail a{
	height: min(5.2em,9vw);
	padding:0 1em;
}

.com_monshin a{
	padding:0 .8em;
}
.com_yoyaku a{background:var(--color_yellow3);}
.com_mail a{background:var(--color_white);}
.com_monshin a{background: var(--color_base);}
.com_shinsatsu a{background: #afd047;}

.com_yoyaku a:hover,
.com_mail a:hover,
.com_monshin a:hover,
.com_shinsatsu a:hover{
	filter: drop-shadow(0 0 5px rgba(124,50,0,0.5))!important;
	transition: 0.4s!important;
}
.com_yoyaku a::before,
.com_mail a::before,
.com_monshin a::before,
.com_shinsatsu a::before{
	position: absolute;
	font-family: 'fontello';
	content: '\e800';	
	right: -2px;
	bottom: -2px;
	font-size:min(130%,1.8vw);
	background: var(--color_base);
	border-radius: 50%;
	width: 1em;
	aspect-ratio: 1 / 1!important;
	display: flex;
    justify-content: center;
    align-items: center;
	line-height: 1em;
	letter-spacing: normal;
	color: var(--color_white);
}
.com_contact.type2 .com_yoyaku a::before,
.com_monshin a::before{
	background: var(--color_white);
	color: var(--color_base);
}
.com_contact.type1{
	max-width: 836px;
	margin: 0 auto;
}
.com_contact.type1 .com_tel{
	width: 40%;
}
.com_contact.type1 .com_yoyaku{
	width: 28%;
}
.com_contact.type1 .com_mail{
	width: 28%;
}

.com_contact.type2 .com_yoyaku{
	width: 33%;
}
.com_contact.type2 .com_mail{
	width: 23%;
}
.com_contact.type2 .com_monshin{
	width: 17%;
}
.com_contact.type2 .com_shinsatsu{
	width: 23%;
}

/*com_contact_memo*/
.com_contact_memo{
	margin-top: 1em;
}
.com_contact_memo li{
	display: inline-block;
	margin-right: 1em;
	line-height: 1.5em;
}
.com_contact_memo li:last-child{
	margin-right: 0;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#soudan3{
	margin-top:-10vw;
}
.com_soudan{
	padding:11vw 0 8vw;
}
.com_soudan .icon{
	top:-5vw;
	width: 15vw;
}
.com_soudan .index{
	margin-bottom: 4vw;
}

/*attention*/
.com_soudan .attention{
	padding: 5% 4%;
	margin:5% auto 0;
}
.com_soudan .attention_inbox{
	max-width: 100%;
    align-items: start;
}
.com_soudan .attention .fs18{
	width: 4.3em;
	line-height: 1.3em;
}
.com_soudan .attention .com_attention{
	width: calc(100% - 5.2em);
}
.com_attention li{
	font-size:90%;
	padding-left: .8em;
}
.com_soudan .bnr{
	width: 100%;
	margin: 4% auto 0;
}

/*com_contact*/
.com_contact{
	flex-wrap: wrap;
    justify-content: center;
}
.com_tel{
	font-size: 200%;
	text-align: center!important;
}
.com_tel span{
	padding-left: 1.3em;
}
.com_tel span::before{
	font-size:100%;
	top:50%;
	left: 0em;
}
.com_yoyaku a,
.com_mail a,
.com_monshin a,
.com_shinsatsu a{
	width: 100%;
	height: 15vw;
	padding:0 6%;
}	
.drawer-content-inbox .com_yoyaku a,
.drawer-content-inbox .com_mail a,
.drawer-content-inbox .com_monshin a,
.drawer-content-inbox .com_shinsatsu a{
	height: 14vw;
}
.com_yoyaku a{
	padding:0 5%;
}	
.com_monshin a{
	padding:0 25%;
}
.com_shinsatsu a{
	padding:0 22%;
}		
.com_yoyaku a::before,
.com_mail a::before,
.com_monshin a::before,
.com_shinsatsu a::before{
	font-size: 4vw;
}
.com_contact.type1 .com_yoyaku a,
.com_contact.type1 .com_mail a{
	height: 16vw;
	padding:0 .7em;
}
.com_contact.type1 .com_tel{
	width: 100%;
	margin-bottom: 4%;
}
.com_contact.type1 .com_yoyaku{
	width: 49%;
	margin-right: 2%;
}
.com_contact.type1 .com_mail{
	width: 49%;
}	
.com_contact.type2{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 80%;
	margin-left:10%!important;
	margin-auto:10%!important;
}
.com_contact.type2 > div{
	margin-bottom:2vw;
}
.com_contact.type2 .com_yoyaku{
	width: 58%;
}
.com_contact.type2 .com_mail{
	width: 40%;
}
.com_contact.type2 .com_monshin{
	width: 40%;
}
.com_contact.type2 .com_shinsatsu{
	width: 58%;
}
	
/*com_contact_memo*/
.com_contact_memo li{
	display: block;
	font-size:95%;
	letter-spacing: normal;
	margin-right: 0;
	line-height: 1.5em;
}
}







/* com_slide
---------------------------------------------------------*/
.com_slide .swiper-slide{
	width: min(490px,40vw);
	aspect-ratio: 490 / 370;
	position: relative;
	overflow: hidden;
}
.com_slide .swiper-slide img{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 100%;
	height: 100%;
	object-fit: cover; /* 縦横比を維持して最大表示 */
	display: block;
}





/* footer
---------------------------------------------------------*/
footer .f_box1,
footer .f_box2{
	background: #faf7ac;
}
footer .f_box1{
	border-top-left-radius: var(--radius100);
	border-top-right-radius: var(--radius100);
}
footer .f_box1 .w1300{
	position: relative;
	padding: min(70px,5vw) 0;
}
footer .f_box1 .f_logo{
	width: min(708px,55vw);
	margin: 0 auto;
}
footer .f_box1 address{
	text-align: center;
	margin: min(40px,3.5vw) auto;
}
footer .f_box1 .flex_box{
	max-width: 1233px;
	margin: 0 auto;
}
footer .f_box1 .flex_box .flex_l{
	width: 45%;
	max-width: 513px;
}
footer .f_box1 .flex_box .flex_l .timetable_memo li{
	line-height: 1.5em;
	display: inline-block;
	margin-right: 1em;
}
footer .f_box1 .flex_box .flex_l .timetable_memo li:last-child{
	margin-right: 0;
}
footer .f_box1 .flex_box .flex_l .com_tel{
	display: inline-block;
	margin: .8em auto .8em;
	font-size:min(250%,4vw);
}
footer .f_box1 .flex_box .flex_l .com_tel span::before{
	background: var(--color_white);
	color: var(--color_base);
}

footer .f_box1 .flex_box .flex_r{
	width: 53%;
}

footer .f_box1 .flex_box .flex_r iframe{
	height: min(384px,38vw);
}
footer .f_box1 .flex_box .flex_r .btn{
	text-align: right;
	margin-top: .5em;
}
footer .f_box1 .flex_box .flex_r .btn i{
	font-size: 60%;
	margin-left: 0.5em;
}
footer .f_box1 .flex_box .flex_r .btn:hover{
	color: var(--color_yellow3);
}
footer .f_box1 .abs_boy{
	position: absolute;
	right: -4%;
	top: min(-120px,-8vw);
	width: 15%;
	aspect-ratio:195 / 332;
}

/*f_box2*/
footer .f_box2{
	padding-bottom: min(95px,7vw);
}
footer .f_box2 .top_index1{
	margin-bottom: min(40px,3vw);
}
footer .f_box2 .col3{
	display: flex;
    justify-content: space-between;
	max-width: 1150px;
	margin: 0 auto min(30px,2vw);
}
footer .f_box2 .col3 dl{
	position: relative;
	width: 33%;
	max-width: 352px;
	background: var(--color_yellow);
	border-radius: var(--radius20);
	padding: 1.3em 2% 1.1em min(8em,7.5vw);
	box-sizing: border-box;
}
footer .f_box2 .col3 dl::before{
	position: absolute;
	content: "";
	display: block;
	background: url("../images/common/access1.svg")no-repeat top left;
	background-size: 100% auto;
	width: min(3.3em,4.5vw);
	aspect-ratio:50 / 50;
	top:50%;
	transform: translateY(-50%);
	left: min(2.3em,1.5vw);
}
footer .f_box2 .col3 dl:nth-child(2)::before{
	background-image: url("../images/common/access2.svg");}
footer .f_box2 .col3 dl:nth-child(3)::before{
	background-image: url("../images/common/access3.svg");}

footer .f_box2 .col3 dt{
	font-weight: bold!important;
	margin-bottom: .3em;
	line-height: 1.6em;
}
footer .f_box2 .col3 dd{
	line-height: 1.6em;
}
footer .f_box2 .flex_box{
	display: flex;
    justify-content: space-between;
	max-width: 1150px;
	margin: 0 auto;
}
footer .f_box2 .flex_box .flex_l{
	width: 47%;
}
footer .f_box2 .flex_box .flex_r{
	width: 48%;
	padding-top: 1.5em;
}
footer .f_box2 .flex_box .flex_r p{
	font-weight: bold!important;
	position: relative;
	padding-left: 4em;
	letter-spacing: 0.15em;
	box-sizing: border-box;
	margin-bottom: 1.5em;
}
footer .f_box2 .flex_box .flex_r p::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/common/access4.svg") no-repeat top left;
	background-size: 100% auto;
	width: 3em;
	aspect-ratio: 50 / 50;
	left: 0;
	top:50%;
	transform: translateY(-50%);
}
footer .f_box2 .flex_box .flex_r dl{
	margin-bottom: 1.2em;
}
footer .f_box2 .flex_box .flex_r dl:last-child{
	margin-bottom: 0;
}
footer .f_box2 .flex_box .flex_r dt{
	background: #ff5157;
	color: var(--color_white);
	font-weight: bold!important;
	line-height: 1em;
	padding: .6em 1.8em;
	box-sizing: border-box;
	border-radius: 2em;
	letter-spacing: 0.2em;
	margin-bottom: .5em;
}
footer .f_box2 .flex_box .flex_r dl:nth-child(4) dt{background: #2ec8d0;} 
footer .f_box2 .flex_box .flex_r dl:nth-child(2) dt{background: #ff5157;}
footer .f_box2 .flex_box .flex_r dl:nth-child(3) dt{background: #ff989f;} 

footer .f_box2 .flex_box .flex_r dt .ft_eng{
	position: relative;
	font-size:130%;
	padding-right: 1em;
	box-sizing: border-box;
	margin-right:.7em;
}
footer .f_box2 .flex_box .flex_r dt strong{
	position: absolute;
	top:50%;
	transform: translateY(-50%);
	right: 0;
	font-size:85%;
	background: var(--color_white);
	border-radius: 50%;
	color:var(--color_base);
	aspect-ratio:1 / 1;
	display: inline-block;
	display: flex;
    justify-content: center;
    align-items: center;
	width: 1.2em;
	font-weight: normal;
	text-align: center;
	letter-spacing: normal;
}
footer .f_box2 .flex_box .flex_r dd{
	line-height: 1.6em;
}
footer .f_box2 .fs17{
	text-align: center;
}

footer .f_box2 .movie{
	display: flex;
    justify-content: space-between;
	max-width:1033px;
	margin:min(50px,4vw) auto min(70px,5vw);
}
footer .f_box2 .movie li{
	width:45%;
	max-width: 456px;
}
footer .f_box2 .movie li .fs20{
	background: #fff;
	text-align: center;
	padding: .43em 1em .4em;
	box-sizing: border-box;
	margin: 0 auto min(40px,2vw);
	border-radius: 3em;
}
footer .f_box2 .movie li .fs20 span{
	color: #ff9f33;
}
footer .f_box2 .movie_vertical {
	position: relative;
	width: 85%;
	aspect-ratio: 9 / 16;
	margin: 0 auto;
}
footer .f_box2 .movie_vertical iframe {
	width: 100%;
	height: 100%;
	display: block;
	border: 0;
}
footer .f_box2 .movie_vertical .icon{
	position: absolute;
	top: 70%;
	transform: translateY(-50%);
	width: 50%;
	aspect-ratio:194 / 135;
}
footer .f_box2 .movie > li:nth-child(1) .movie_vertical .icon{
	right: -45%;
}
footer .f_box2 .movie > li:nth-child(2) .movie_vertical .icon{
	top: 30%;
	left: -38%;
}

footer .f_box3{
	position: relative;
	background: #e0ac16;
	padding: min(50px,5vw) 0 min(70px,6vw);
}
footer .f_box3 .bnr{
	display: flex;
    justify-content: space-between;
	align-items: flex-end;	
	width: 70%;
	margin: 0 auto min(50px,4vw);
}
footer .f_box3 .bnr li{
	width: 48%;
}
footer .f_box3 .pagetop{
	position: absolute;
	top: 81%;
	transform: translateY(-50%);
	left: 3%;
	width: min(212px,15vw);
	aspect-ratio:212 / 223;
	transition: 0.6s;
}
footer .f_box3 .pagetop:hover{
	top: 70%;
	transition: 0.6s;
}
footer .f_box3 .copyright{
	text-align: center;
	color:var(--color_white);
	letter-spacing: 0.1em;
	line-height: 1.6em;
}
footer .f_box3 .insta{
	margin-right: 0;
	margin-left: auto;
	text-align: right;
	margin-top: -1em;
	font-size: min(230%,3.5vw);
	color:var(--color_white);
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1500px) {
footer .f_box1 .abs_boy{
	right: 1%;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
footer .f_box1 .abs_boy{
	right: 1%;
	top:-5vw;
}
footer .f_box3 .copyright{
	letter-spacing: normal;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
footer .f_box1 .w1300{
	padding: 8vw 0;
}
footer .f_box1 .abs_boy{
	top:-3vw;
	right: -3%;
	width: 25%;
}
footer .f_box1 .f_logo{
	width: 75%;
}
footer .f_box1 address{
	margin: 5vw auto 6vw;
}
footer .f_box1 .flex_box{
	display: block;
}
footer .f_box1 .flex_box .flex_l{
	width: 100%;
	max-width: 100%;
	margin-bottom: 8%;
}
footer .f_box1 .flex_box .flex_l .timetable_memo li{
	font-size: 92%;
	margin-right: .8em;
}
footer .f_box1 .flex_box .flex_l .com_tel{
	margin: .6em auto;
	font-size: 8vw;
}

footer .f_box1 .flex_box .flex_r{
	width: 100%;
}
footer .f_box1 .flex_box .flex_r iframe{
	height: 55vw;
}

/*f_box2*/
footer .f_box2{
	padding-bottom:8vw
}
footer .f_box2 .top_index1{
	margin-bottom: 5vw;
}
footer .f_box2 .col3{
	display: block;
	margin: 0 auto;
}
footer .f_box2 .col3 dl{
	width: 100%;
	max-width: 100%;
	padding: 1.1em 2% 1.1em 23vw;
	margin-bottom: 2vw;
}
footer .f_box2 .col3 dl::before{
	width: 12vw;
	left: 6vw;
}
footer .f_box2 .flex_box{
	display: block;
}
footer .f_box2 .flex_box .flex_l{
	width:100%;
}
footer .f_box2 .flex_box .flex_r{
	width:100%;
	padding-top: 8%;
}
footer .f_box2 .flex_box .flex_r p{
	display: inline-block;
	margin: 0 auto 1em;
	padding-left: 3.5em;
}
footer .f_box2 .flex_box .flex_r p::before{
	width: 2.5em;
}
footer .f_box2 .flex_box .flex_r dt{
	padding: .5em 1em;
}

footer .f_box2 .movie{
	display: block;
	margin: 10% auto 8%;
}
footer .f_box2 .movie li{
	width: 100%;
	max-width:100%;
	margin-bottom: 8%;
}
footer .f_box2 .movie li:last-child{
	margin-bottom:0;
}
footer .f_box2 .movie li .fs20{
	margin: 0 auto 3%;
}
footer .f_box2 .movie_vertical {
	width:60%;
}
footer .f_box2 .movie_vertical .icon{
	width: 50%;
	top: 60%;
}
footer .f_box2 .movie > li:nth-child(1) .movie_vertical .icon{
	right: -40%;
}
	
/*f_box3*/
footer .f_box3{
	padding:8vw 0 50vw;
}
footer .f_box3 .bnr{
	display: block;
	width: 90%;
	margin: 0 auto 4vw;
}
footer .f_box3 .bnr li{
	width: 100%;
	margin-bottom: 1vw;
}
footer .f_box3 .pagetop{
	top:75%!important;
	left: auto;
	right: 1%;
	width: 32vw;
}
footer .f_box3 .copyright{
	position: absolute;
	left: 5%;
	bottom: 24vw;
	text-align: left;
	font-size:90%;
}
footer .f_box3 .insta{
	margin-right: auto;
	margin-left: 5%;
	text-align: left;
	margin-top: 0;
	font-size: 7vw;
}
}



/* 下層
---------------------------------------------------------*/
.contentpage #wrapper{
	overflow: hidden;
}
.m_img_area{
	position: relative;
}
.contentpage #pagebody{
	position: relative;
	z-index: 2;
}
.contentpage .fadeup {
	opacity: 1!important;
	transform: translateY(0px)!important;
	transition: none!important;
}
.contentpage_m_img{
	width: var(--content_width);
	max-width: 1300px;
	margin: 0 auto;
	padding-top: min(100px,8.5vw);
	display: flex;
    justify-content: space-between;
	flex-flow: row-reverse;
} 
.contentpage_m_img_r{
	width: 52.5%;
} 
.contentpage_m_img_r > div{
	position: relative;
	max-width: 627px;
	width: 90%;
} 
.contentpage_m_img_r > div .deco{
	position: absolute;
	bottom: 0;
	right: -35%;
	width: 52%;
}
.contentpage_m_img_l{
	position: relative;
	width: 45%;
	text-align: left;
}
 .contentpage_m_img_l .m_title{
	position: absolute;
	top:55%;
	transform: translateY(-50%);
	left: 0;
}
.contentpage_m_img_l .m_title dt.ft_eng{
	font-size: min(670%,8vw);
	font-weight: 800!important;
	line-height: 1em;
	color:#6ad0bb;
}
.contentpage_m_img_l .m_title dd{
	font-size: min(150%,2.5vw);
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1em;
	margin-top: .6em;
}
.contentpage_m_img_l .pankuzu{
	position: absolute;
	top:80%;
	transform: translateY(-50%);
	left: 0;
	font-size:min(95%,1.7vw);
}
.contentpage_m_img_l .pankuzu li{
	position: relative;
	padding-right: .8em;
	box-sizing: border-box;
	display: inline-block;
	opacity: .3;
	line-height: 1em;
}
.contentpage_m_img_l .pankuzu li:last-child{
	padding-right: 0;
}
.contentpage_m_img_l .pankuzu li::before{
	position: absolute;
	display: block;
	content: "-";
	top:0;
	right: 0;
}
.contentpage_m_img_l .pankuzu li:last-child::before{
	display: none;
}
.contentpage_m_img_l .pankuzu li a{
	text-decoration: underline;
}
.contentpage_m_img_l .pankuzu li a:hover{
	text-decoration: none;
}


.com_index1{
	margin-bottom: 1em;
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	padding: .8em 1em .85em;
	font-family: "Noto Serif JP", serif;
	font-weight: 400;
	font-style: normal;
	text-align: center;
	font-size: min(220%,3.5vw);
	letter-spacing: 0.15em;
	line-height: 1.5em;
	background: #ffe269;
	border-radius: var(--radius20);
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.contentpage_m_img_r > div .deco{
	right: -25%;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.contentpage_m_img{
	padding-top:20vw;
	margin-bottom: 15vw;
} 
.contentpage_m_img_r{
	width: 52.5%;
} 
.contentpage_m_img_r > div{
	width: 100%;
} 
.contentpage_m_img_r > div .deco{
	right: -15%;
}
.contentpage_m_img_l{
	width: 45%;
}
 .contentpage_m_img_l .m_title{
	top:60%;
}
.contentpage_m_img_l .m_title dt.ft_eng{
	font-size: 10vw;
}
.contentpage_m_img_l .m_title dd{
	font-size: 3.5vw;
	margin-top: .5em;
}
.contentpage_m_img_l .pankuzu{
	width: 220%;
	top: calc(100% + 1.3em);
	font-size: 85%;
	line-height: 1.5em;
}
.com_index1{
	padding: .6em .7em .65em;
	font-size:140%;
}
}





/* PC
------------------------------------------*/
@media only screen and (min-width: 960px)  {
.tb_only{display:none !important;}
.sp_only{display:none !important;}
.sp_tb{display:none !important;}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.pc_only{display:none !important;}
.sp_only{display:none !important;}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.pc_only{display:none !important;}
.tb_only{display:none !important;}
.tb_pc{display:none !important;}
}