/*common_css*/
.fas {
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  display:inline-block;
  font-style:normal;
  font-variant:normal;
  text-rendering:auto;
  line-height:1;
  font-family:"Font Awesome 5 Free",sans-serif;
  font-weight:900
}
@font-face {
  font-family:"Font Awesome 5 Free";
  font-style:normal;
  font-weight:900;
  font-display:swap;
  src:url("//use.fontawesome.com/releases/v5.10.2/webfonts/fa-solid-900.eot");
  src:url("//use.fontawesome.com/releases/v5.10.2/webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"),
      url("//use.fontawesome.com/releases/v5.10.2/webfonts/fa-solid-900.woff2") format("woff2"),
      url("//use.fontawesome.com/releases/v5.10.2/webfonts/fa-solid-900.woff") format("woff"),
      url("//use.fontawesome.com/releases/v5.10.2/webfonts/fa-solid-900.ttf") format("truetype"),
      url("//use.fontawesome.com/releases/v5.10.2/webfonts/fa-solid-900.svg#fontawesome") format("svg")
}/*widget:e2389960-105b-4b8e-b138-0a25a4c6b109*/[data-lib="1142"]{width: 100%;
	min-width: 1200px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0px 0;
	position: fixed;
	padding-left: calc((100% - 1400px)/ 2);
	padding-right: calc((100% - 1400px)/ 2);
	z-index: 9999999;
	top: 0;
	left: 0;
	background: rgba(255,255,255,0.8);}[data-lib="1142"] .logo{display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;}[data-lib="1142"] h1{font-size: 0.875em;
	width: 700px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;}[data-lib="1142"] .logo figure{font-weight: bold;}[data-lib="1142"] .logo figure a{display: flex;
	align-items: center;}[data-lib="1142"] .logo figure img{height: 100%;
	margin-right: 10px;}[data-lib="1142"] .menu{display: flex;}[data-lib="1142"] .menu .wrap{display: flex;
	flex-direction: column;
	align-items: flex-end;
	margin-right: 20px;}[data-lib="1142"] .menu nav.menu03 a,[data-lib="1142"] 
.menu nav.NavMenu a{font-weight: 800;
	color: #604c3f;}[data-lib="1142"] nav.menu03,[data-lib="1142"] 
nav.NavMenu{margin: 0px auto;}[data-lib="1142"] .menu02{display: flex;
	margin: 10px 0 5px;}[data-lib="1142"] .menu02-sp{display: none;}[data-lib="1142"] .menu02>a{margin-left: 10px;}[data-lib="1142"] nav.menu03 ul,[data-lib="1142"] 
nav.NavMenu ul{display: flex;
	margin-bottom: -5px;}[data-lib="1142"] nav.menu03 ul li,[data-lib="1142"] 
nav.NavMenu ul li{margin-left: 40px;}[data-lib="1142"] .footer{display: none;}[data-lib="1142"] .btna{background-color: var(--bg03);
	border-radius: 25px;
	text-align: center;
	line-height: 1;
	padding: 15px 20px 10px;
	font-weight: 800;
	color: white;
	font-size: 1.5em;
	min-width: 269px;}[data-lib="1142"] .btna span{display: block;
	font-size: 12px;
	color: white;
	font-weight: 800;}[data-lib="1142"] .btnb{border: 2px solid var(--red);
	color:var(--red);
	border-radius: 25px;
	padding: 15px 20px 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	min-width: 180px;
	font-size: 25px;
	line-height: 1;
	background: #fff;}[data-lib="1142"] .btnb:hover{background-color: var(--red);
	color: white;}[data-lib="1142"] .btnc{border: 2px solid #22a838;
	border-radius: 25px;
	padding: 4px 20px;
	background-color: #22a838;
	display: flex;
	align-items: center;
	justify-content: center;
	color: white;
	font-weight: 800;
	font-size: 1.125em;
	min-width: 180px;}[data-lib="1142"] .btnc:hover{background-color: white;
	color: #22a838;}@media screen and (max-width: 480px){[data-lib="1142"]{width: 100%;
	min-width: 100%;
	padding-bottom: 5px;}[data-lib="1142"] .logo{display: flex;
	align-items: center;
	padding-left: 5px;}[data-lib="1142"] .logo figure{margin-top: 0;
	max-height: none;}[data-lib="1142"] .logo figure img{width: 100px;
	height: auto;}[data-lib="1142"] h1{display: none;}[data-lib="1142"] .menu .wrap{margin-right: 1px;}[data-lib="1142"] .menu02{display: none;}[data-lib="1142"] .menu02-sp{display: block;}[data-lib="1142"] nav.menu03{position: absolute;
	left: 0;
	top: 65px;
	width: 100%;
	background-color: rgba(255, 255, 255, 0.8);}[data-lib="1142"] .menu nav.menu03 a{font-weight: normal;
	font-size: 12px;
	display: block;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1.3;}[data-lib="1142"] .menu nav.menu03 a:hover{background-color: #604c3f;
	color: #e6e1da;}[data-lib="1142"] nav.menu03 ul li{background-color: #e6e1da;
	margin-left: 0px;
	text-align: center;
	width: 49%;
	min-height: 50px;}[data-lib="1142"] nav.menu03 ul li+li{border-left: 1px solid #fff;}[data-lib="1142"] nav.menu03 ul li em{display: none;}[data-lib="1142"] nav.NavMenu{position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
	background: #fff;
	color: #000;
	text-align: center;
	width: 100%;
	transform: translateY(-100%);
	transition: all 0.6s;}[data-lib="1142"] nav.NavMenu ul{background: #e7e2db;
	width: 100%;
	margin: 0 auto;
	padding: 30px 0%;
	display: block;}[data-lib="1142"] nav.NavMenu ul li{font-size: 1em;
	list-style-type: none;
	padding: 0;
	width: 100%;
	margin: 0;}[data-lib="1142"] nav.NavMenu ul li:last-child{padding-bottom: 0;
	border-bottom: none;}[data-lib="1142"] nav.NavMenu ul li a{display: block;
	color: #604c3f;
	padding: 1em 0;
	text-decoration: none;}[data-lib="1142"] nav.NavMenu.active{transform: translateY(0%);}[data-lib="1142"] .Toggle{display: block;
	width: 60px;
	height: 60px;
	cursor: pointer;
	z-index: 99999999;
	background-color: #604c3f;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	position: relative;}[data-lib="1142"] .Toggle span{display: block;
	position: absolute;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
	width: 30px;
	border-bottom: solid 2px #fff;}[data-lib="1142"] .Toggle span:nth-child(1){top: 18px;}[data-lib="1142"] .Toggle span:nth-child(2){top: 28px;}[data-lib="1142"] .Toggle span:nth-child(3){top: 38px;}[data-lib="1142"] .Toggle.active span:nth-child(1){top: 29px;
	left: 15px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);}[data-lib="1142"] .Toggle.active span:nth-child(2),[data-lib="1142"] 
	.Toggle.active span:nth-child(3){top: 29px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);}[data-lib="1142"] .Toggle em{font-size: 11px;
	bottom: 8px;}[data-lib="1142"] .btna{border-radius: 0px;
	line-height: 1.2;
	padding: 5px 3px;
	font-size: 13px;
	min-width: 100%;
	width: 85px;
	height: 60px;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	white-space: nowrap;}[data-lib="1142"] .btna:before{font-family: "Font Awesome 5 Free";
	content: '\f879';
	font-weight: 900;
	font-size: 1.7em;
	margin: 0 0 3px;
	display: block;
	background-color: #930a00;}[data-lib="1142"] .footer{display: block;
	position: fixed;
	bottom: 0;
	background-color: var(--bg03);
	width: 100%;}[data-lib="1142"] .footer ul{display: flex;
	padding: 5px 8px;
	align-items: center;
	justify-content: center;
	z-index: 999999999;}[data-lib="1142"] .footer ul li{flex: 1;
	color: white;
	font-weight: 800;
	font-size: 13px;
	white-space: nowrap;
	text-align: center;}[data-lib="1142"] .footer ul li + li{margin-left: 10px;}[data-lib="1142"] .footer ul li span{display: block;
	font-weight: normal;
	font-size: 10px;}[data-lib="1142"] .footer a{display: block;
	padding: 5px;
	border: 1px solid var(--white);}[data-lib="1142"] .footer .entry a{background: var(--white);
	color: var(--kon);}[data-lib="1142"] .footer ul li dl{background-color: white;
	color: var(--kon);
	padding: 3px 5px 3px 30px;
	position: relative;}[data-lib="1142"] .footer ul li dl dt a{font-weight: 800;
	font-size: 13px;
	color: var(--kon);
	padding:5px;
	display: inline-block;}[data-lib="1142"] .footer ul li dl dd{font-weight: normal;
	font-size: 13px;
	margin-top: -3px;}[data-lib="1142"] .footer ul li dl:before{font-family: "Font Awesome 5 Free";
	content: '\f879';
	font-weight: 900;
	font-size: 1.5em;
	position: absolute;
	left: 5px;
	top: 50%;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);}[data-lib="1142"] .footer ul li.line{display: flex;
	background: #22a838;
	height: 41px;
	align-items: center;
	padding: 0 10px;}[data-lib="1142"] .footer ul li.line a{flex-grow: 1;
	background: #22a838;
	color:#fff;}}/*widget:dc893e56-347e-4ca9-8425-be70cc4eac6b*/[data-lib="1136"] aside + aside{display: none;}[data-lib="1136"] .atach{height: 400px;}@media screen and (max-width: 768px){[data-lib="1136"] .atach{margin: 0 0 30px;}}[data-instance="1217"] .aside{background-image:url(/_img/ja/cms/1217/convimg/___/session/);}/*widget:a141ce08-2bb3-4a4b-9c2b-e030f338f446*/[data-lib="1156"]{text-align: center;
	display: block;
	padding:0 0 40px;}[data-lib="1156"] img{display: block;
	margin: 15px auto;}[data-lib="1156"] .copyright{padding:30px 5%;
	margin:30px 0 0;
	text-align: center;
	font-size: 14px;}[data-lib="1156"] p{text-align: center;
	margin:15px 0;}@media {}/*layout:10*/@charset "UTF-8";
/* CSS Document */


/* -------------------------------------
Browser：IE11 over
-------------------------------------
01: reset
02: common
03：template
-------------------------------------*/

/** ================================================================================
		01.Reset
================================================================================ **/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:none;
background:transparent;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
display:block;
}
h1, h2, h3, h4, h5, h6,
dt,th{
	font-weight:normal;
}
ul,ol {
list-style:none;
}
blockquote, q {
quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content:'';
content:none;
}
table {
border-spacing:0;
border-collapse:collapse;
}
/* change border colour to suit your needs */
hr {
display:block;
margin:1em 0;
padding:0;
height:1px;
border:0;
border-top:1px solid #cccccc;
}
img{
	border:none;
}
b,em,i,strong,address{
	font-style: normal;
}
/*input, button, textarea, select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}*/

/** ================================================================================
		02.common
================================================================================ **/
:root{
    --ffmain: 'M PLUS Rounded 1c', sans-serif;
    --ffnone:"Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

body{
	color:#1e1e1e;
	font-size:16px;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	min-width: 1400px;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #fff;
  margin:0 !important;
}
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;

	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

a{
    color:#604c3f;
	text-decoration:none;
	cursor:pointer;
}a:hover{
	-webkit-transition: .3s;
	transition: .3s;
}

a:hover{
	text-decoration:none;
}
a:hover img{
	opacity: 0.8;
	-ms-filter: alpha(opacity=80);
	filter: alpha(opacity=80);
}


/**PC電話ボタン無効**/
a[href^="tel"],
a[href=""]{
	pointer-events: none;
}
@media screen and (max-width: 480px) {
	body{
		min-width: 100%;
	}
	a[href^="tel"]{
		pointer-events: auto;
	}
}


/* -------------------------------------
ベーススタイル設定

1.clearfix,clear
2.font
3.float
4.text-align
5.margin
6.padding
-------------------------------------*/
/*0.clock */
.block{
	display: block;
}
.in-block{
	display: inline-block;
}

/*1. clearfix,clear */

/* For modern browsers */
.cf:before,
.cf:after {
	display:block;
	overflow:hidden;
	content:"";
}

.cf:after {
	clear:both;
}

.clear{
	clear: both;
}

/*2. font 必要なら追加　優先順位：高*/
body .fw_b,
body .fw-b{
	font-weight: bold;
}
body .fz12{
	font-size: 12px;
}
body .fz13{
	font-size: 13px;
}
body .fz14{
	font-size: 14px;
}
body .fz16{
	font-size: 16px;
}
body .fz18{
	font-size: 18px;/*16*/
}
body .fz20{
	font-size: 20px;/*16*/
}
body .fz22{
	font-size: 22px;/*16*/
}
body .fz24{
	font-size: 24px;/*18*/
}
body .fz26{
	font-size: 26px;/*20*/
}
body .fz28{
	font-size: 28px;/*20*/
}
body .fz30{
	font-size: 30px;/*28*/
}
body .fz32{
	font-size: 32px;/*28*/
}
body .fz35{
	font-size: 35px;
}
body .fz44{
	font-size: 44px;/*36*/
}
body .fz46{
	font-size: 46px;/*40*/
}
body .fz54{
	font-size: 54px;/*42*/
}

@media screen and (max-width: 480px) {
	body .fz18{
		font-size: 16px;/*16*/
	}
	body .fz20{
		font-size: 16px;/*16*/
	}
	body .fz22{
		font-size: 16px;/*16*/
	}
	body .fz24{
		font-size: 18px;/*18*/
	}
	body .fz26{
		font-size: 20px;/*20*/
	}
	body .fz28{
		font-size: 20px;/*20*/
	}
	body .fz30{
		font-size: 28px;/*28*/
	}
	body .fz32{
		font-size: 28px;/*28*/
	}
	body .fz35{
		font-size: 28px;/*28*/
	}
	body .fz44{
		font-size: 36px;/*36*/
	}
	body .fz46{
		font-size: 40px;/*40*/
	}
	body .fz54{
		font-size: 42px;/*42*/
	}
}


/***
パターン２
**/
/*2. font 必要なら追加　優先順位：高*/
body .fw-b {
	font-weight: bold;
}
body .fs12{
	font-size: 0.75rem;
}
body .fs14{
	font-size: 0.87rem;
}
body .fs15{
	font-size: 0.94rem;
}
body .fs16{
	font-size: 16px;
}
body .fs17{
	font-size: 17px;
}
body .fs18{
	font-size: 18px;
}
body .fs20{
	font-size: 20px;
}
body .fs22{
	font-size: 22px;
}
body .fs24{
	font-size: 24px;
}
body .fs26{
	font-size: 26px;
}
body .fs28{
	font-size: 28px;
}
body .fs30{
	font-size: 30px;
}
body .fs32{
	font-size: 32px;
}
body .fs35{
	font-size: 35px;
}
body .fs40{
	font-size: 40px;
}
body .fs44{
	font-size: 44px;
}
body .fs46{
	font-size: 46px;
}
body .fs54{
	font-size: 54px;
}
body .fs50{
	font-size: 50px;
}
body .fs60{
	font-size: 60px;
}
body .fs70{
	font-size: 70px;
}

@media screen and (max-width: 768px) {
	body .fs16{
		font-size: 15px;
	}
	body .fs17{
		font-size: 15px;
	}
	body .fs18{
		font-size: 16px;
	}
	body .fs20{
		font-size: 16px;
	}
	body .fs22{
		font-size: 16px;
	}
	body .fs24{
		font-size: 18px;
	}
	body .fs26{
		font-size: 22px;
	}
	body .fs28{
		font-size: 24px;
	}
	body .fs30{
		font-size: 26px;
	}
	body .fs32{
		font-size: 28px;
	}
	body .fs35{
		font-size: 30px;
	}
	body .fs40{
		font-size: 36px;
	}
	body .fs44{
		font-size: 36px;
	}
	body .fs46{
		font-size: 40px;
	}
	body .fs50{
		font-size: 42px;
	}
	body .fs54{
		font-size: 42px;
	}
	body .fs60{
		font-size: 46px;
	}
	body .fs70{
		font-size: 48px;
	}
}

@media screen and (max-width: 480px) {
	body .fs26{
		font-size: 5vw;
	}
	body .fs28{
		font-size: 5vw;
	}
	body .fs30{
		font-size: 5vw;
	}
	body .fs32{
		font-size: 6vw;
	}
	body .fs35{
		font-size: 6vw;
	}
	body .fs40{
		font-size: 7vw;
	}
	body .fs44{
		font-size: 7vw;
	}
	body .fs46{
		font-size: 7vw;
	}
	body .fs50{
		font-size: 7vw;
	}
	body .fs54{
		font-size: 7vw;
	}
	body .fs60{
		font-size: 8.8vw;
	}
	body .fs70{
		font-size: 8.8vw;
	}
}



/* -------------------------------------
文字
-------------------------------------*/
.lh1{
	line-height: 1.0;
}
.lh2{
	line-height: 2.0;
}
.lh15{
	line-height: 1.5;
}
.lh13{
	line-height: 1.3;
}


/*3. float */
.f_L {
	display: inline;
	float: left;
}
.f_R {
	display: inline;
	float: right;
}

/*4. text-align 優先順位：高 */
body .t_R {
	text-align: right;
}
body .t_L {
	text-align: left;
}
body .t_C,
body .t_CL,
body .t_CR{
	text-align: center;
}

body .ai_c{
	align-items: center;
}
body .ai_fe{
	align-items:flex-end;
}
body .ai_fs{
	align-items:flex-start;
}
body .ai_s{
	align-items:stretch;
}

body .jc_c{
	justify-content: center;
}
body .jc_fs{
	justify-content: flex-start;
}
body .jc_sb{
	justify-content: space-between;
}
body .jc_sa{
	justify-content: space-around;
}

@media screen and (max-width: 480px){
	body .t_CL{
		text-align: left;
	}
	body .t_CR{
		text-align: right;
	}
}

/*5. margin 必要なら追加　優先順位：高 */
body .m0 {
	margin: 0;
}
body .mb0{
	margin-bottom: 0;
}
body .mb5 {
	margin-bottom: 5px;
}
body .mb10 {
	margin-bottom: 10px;
}
body .mb15 {
	margin-bottom: 15px;
}
body .mb20 {
	margin-bottom: 20px;
}
body .mb30 {
	margin-bottom: 30px;
}
body .mb40 {
	margin-bottom: 40px;
}
body .mb50 {
	margin-bottom: 50px;
}
body .mb80 {
	margin-bottom: 80px;
}
body .mb100 {
	margin-bottom: 100px;
}
body .mb150 {
	margin-bottom: 150px;
}
body .mt0{
	margin-top: 0px;
}
body .mt5 {
	margin-top:5px;
}
body .mt10 {
	margin-top:10px;
}
body .mt15 {
	margin-top:15px;
}
body .mt20 {
	margin-top:20px;
}
body .mt30 {
	margin-top:30px;
}
body .mt40 {
	margin-top:40px;
}
body .mt50 {
	margin-top:50px;
}
body .mt80 {
	margin-top:80px;
}
body .mt100 {
	margin-top:100px;
}
body .mt150 {
	margin-top:150px;
}
body .mt200 {
	margin-top:200px;
}
body .ml0{
	margin-left: 0;
}
body .ml5 {
	margin-left: 5px;
}
body .ml10 {
	margin-left: 10px;
}
body .ml15 {
	margin-left: 15px;
}
body .ml20 {
	margin-left: 20px;
}
body .ml30 {
	margin-left: 30px;
}
body .mr0{
	margin-right: 0;
}
body .mr5 {
	margin-right: 5px;
}
body .mr10 {
	margin-right: 10px;
}
body .mr15 {
	margin-right: 15px;
}
body .mr20 {
	margin-right: 20px;
}
body .mr30 {
	margin-right: 30px;
}


@media screen and (max-width: 480px) {
	/*5. margin 30以上は1/2 */
	body .mb40 {
		margin-bottom: 20px;
	}
	body .mb50 {
		margin-bottom: 25px;
	}
	body .mb80 {
		margin-bottom: 40px;
	}
	body .mb100 {
		margin-bottom: 50px;
	}
	body .mb150 {
		margin-bottom: 75px;
	}
	body .mt40 {
		margin-top:20px;
	}
	body .mt50 {
		margin-top:25px;
	}
	body .mt80 {
		margin-top:40px;
	}
	body .mt100 {
		margin-top:50px;
	}
	body .mt150 {
		margin-top:75px;
	}
	body .mt200 {
		margin-top:100px;
	}
}

/*6. padding 優先順位:高*/
body .p0 {
	padding: 0;
}
body .plr5 {
	padding: 0 5px;
}
body .plr10 {
	padding: 0 10px;
}
body .plr15 {
	padding: 0 15px;
}
body .plr20 {
	padding: 0 20px;
}
body .ptb10 {
	padding: 10px 0;
}
body .ptb20 {
	padding: 20px 0;
}
body .pall10 {
	padding: 10px;
}
body .pall20 {
	padding: 20px;
}
body .p0 {
	padding: 0;
}
body .pb0{
	padding-bottom: 0;
}
body .pb5 {
	padding-bottom: 5px;
}
body .pb10 {
	padding-bottom: 10px;
}
body .pb15 {
	padding-bottom: 15px;
}
body .pb20 {
	padding-bottom: 20px;
}
body .pb30 {
	padding-bottom: 30px;
}
body .pb40 {
	padding-bottom: 40px;
}
body .pb50 {
	padding-bottom: 50px;
}
body .pb70 {
	padding-bottom: 70px;
}
body .pb80 {
	padding-bottom: 80px;
}
body .pb100 {
	padding-bottom: 100px;
}
body .pb150 {
	padding-bottom: 150px;
}
body .pt0{
	padding-top: 0px;
}
body .pt5 {
	padding-top:5px;
}
body .pt10 {
	padding-top:10px;
}
body .pt15 {
	padding-top:15px;
}
body .pt20 {
	padding-top:20px;
}
body .pt30 {
	padding-top:30px;
}
body .pt40 {
	padding-top:40px;
}
body .pt50 {
	padding-top:50px;
}
body .pt70 {
	padding-top:70px;
}
body .pt80 {
	padding-top:80px;
}
body .pt100 {
	padding-top:100px;
}
body .pt150 {
	padding-top:150px;
}
body .pl0{
	padding-left: 0;
}
body .pl5 {
	padding-left: 5px;
}
body .pl10 {
	padding-left: 10px;
}
body .pl15 {
	padding-left: 15px;
}
body .pl20 {
	padding-left: 20px;
}
body .pl30 {
	padding-left: 30px;
}
body .pr0{
	padding-right: 0;
}
body .pr5 {
	padding-right: 5px;
}
body .pr10 {
	padding-right: 10px;
}
body .pr15 {
	padding-right: 15px;
}
body .pr20 {
	padding-right: 20px;
}
body .pr30 {
	padding-right: 30px;
}

@media screen and (max-width: 480px) {
    body .pb20 {
        padding-bottom: 15px;
    }
    body .pb30 {
        padding-bottom: 20px;
    }
	body .pb40 {
		padding-bottom: 20px;
	}
	body .pb50 {
		padding-bottom: 25px;
	}
	body .pb70 {
		padding-bottom: 35px;
	}
	body .pb80 {
		padding-bottom: 40px;
	}
	body .pb100 {
		padding-bottom: 50px;
	}
	body .pb150 {
		padding-bottom: 75px;
	}
	body .pt20 {
		padding-top:15px;
	}
	body .pt30 {
		padding-top:20px;
	}
	body .pt40 {
		padding-top:20px;
	}
	body .pt50 {
		padding-top:25px;
	}
	body .pt70 {
		padding-top:35px;
	}
	body .pt80 {
		padding-top:40px;
	}
	body .pt100 {
		padding-top:50px;
	}
	body .pt150 {
		padding-top:75px;
	}
}


/* -------------------------------------
幅
-------------------------------------*/
body .w100p,
body .w980,
body .w900,
body .w820,
body .w800,
body .w700,
body .w650,
body .w600{
	margin-right: auto;
	margin-left : auto;
}
body .w100p{
	width: 100%;
}
body .w980{
	width: 980px;
}
body .w900{
	width: 900px;
}
body .w820{
	width: 820px;
}
body .w800{
	width: 800px;
}
body .w700{
	width: 700px;
}
body .w650{
	width: 650px;
}
body .w600{
	width: 600px;
}

@media screen and (max-width: 480px) {
	body .w100p,
	body .w980,
	body .w900,
	body .w820,
	body .w800,
	body .w700,
	body .w650,
	body .w600{
		margin-right: auto;
		margin-left : auto;
	}
	body .w100p{
		width: 100%;
	}
	body .w980{
		width: 100%;
	}
	body .w900{
		width: 100%;
	}
	body .w820{
		width: 100%;
	}
	body .w800{
		width: 100%;
	}
	body .w700{
		width: 100%;
	}
	body .w650{
		width: 100%;
	}
	body .w600{
		width: 100%;
	}
	body .w100p > *,
	body .w980 > *,
	body .w900 > *,
	body .w820 > *,
	body .w800 > *,
	body .w700 > *,
	body .w650 > *,
	body .w600 > *{
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
	body .w100p > .max,
	body .w100p.max,
	body .w980 > .max,
	body .w980.max,
	body .w900 > .max,
	body .w900.max,
	body .w820 > .max,
	body .w820.max,
	body .w800 > .max,
	body .w800.max,
	body .w700 > .max,
	body .w700.max,
	body .w650 > .max,
	body .w650.max,
	body .w600 > .max,
	body .w600.max{
		width: 100%;
	}
}

body .calc980{
	padding-right: calc( ( 100% - 980px ) / 2 );
	padding-left: calc( ( 100% - 980px ) / 2 );
}

body .calc820{
	padding-right: calc( ( 100% - 820px ) / 2 );
	padding-left: calc( ( 100% - 820px ) / 2 );
}

@media screen and (max-width: 480px){
	body .calc980,
	body .calc820{
	padding-right: 0;
	padding-left: 0;
	}
	body .calc980 > .max,
	body .calc820 > .max{
		width: 100%;
	}
	body .calc980 > *,
	body .calc820 > *{
		margin-right: auto;
		margin-left: auto;
		width: 90%;
	}
}

/* -------------------------------------
文字装飾
-------------------------------------*/
/**黄色マーカー**/
b.liner{
	background: -webkit-linear-gradient(transparent 40%, #fff552 0%);
	background: linear-gradient(transparent 40%, #fff552 0%);
}

/* -------------------------------------
改行
-------------------------------------*/
.pc{
}
.sp{
	display:none;
}
.ib{
	display: inline-block;
}

@media screen and (max-width: 480px) {
	.pc{
		display: none;
	}
	.sp{
		display:block;
	}
	.sp-ib{
		display: inline-block;
	}
}


/* -------------------------------------
横並びボックスの数
-------------------------------------*/
/**２つ並び**/
.box2C{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
width: 100%;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
.box2C > *{
width: 48%;
}
.box2C:after{
display: block;
width: 48%;
content: "";
}

/**3つ並び**/
.box3C{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
width: 100%;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
.box3C > *{
width: 32%;
}
.box3C:after{
display: block;
width: 32%;
content: "";
}

/**4つ並び**/
.box4C{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
width: 100%;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
.box4C > *{
width: 24.5%;
}
.box4C:after,
.box4C:before{
display: block;
width: 24.5%;
content: "";
}
.box4C:before{
-webkit-box-ordinal-group:2;
-ms-flex-order:1;
order:1;
}

@media screen and (max-width: 480px) {
/* -------------------------------------
横並びボックスの数
-------------------------------------*/
	/**２つ並び**/
	.box2C{
	width: 100%;
	}
	.box2C.box1C_sp{
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
	}.box2C.box2C_sp{
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	}
	.box2C.box1C_sp > *{
	width: 100%;
	}
	.box2C.box1C_sp:after{
	display: none;
	}
	.box2C.box2C_sp > *,
	.box2C.box2C_sp::after{
	width: 48%;
	}
	.box2C.box2C_sp.sp1c>*,
	.box2C.box2C_sp.sp1c::after{
	/*		min-width: 300px;*/
	}

	/**3つ並び**/
	.box3C{
	width: 100%;
	}
	.box3C.box1C_sp{
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
	}.box3C.box2C_sp{
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	}
	.box3C.box3C_sp{
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	}
	.box3C.box1C_sp > *{
	width: 100%;
	}
	.box3C.box1C_sp:after{
	display: none;
	}
	.box3C.box2C_sp > *,
	.box3C.box2C_sp::after{
	width: 48%;
	}
	.box3C.box3C_sp > *,
	.box3C.box3C_sp::after{
	width: 31%;
	}

	/**4つ並び**/
	.box4C{
	width: 100%;
	}
	.box4C.box1C_sp{
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
	}.box4C.box2C_sp{
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	}
	.box4C.box1C_sp > *{
	width: 100%;
	}.box4C.box2C_sp > *{
	width: 48%;
	}
	.box4C:after,
	.box4C:before{
	display: none;
	}
}

@media screen and (max-width: 480px) {
/* -------------------------------------
横並びボックスの数
-------------------------------------*/
	.sp1c{
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column !important;
	}
	.sp1c>*,
	.sp1c::after{
	width: 100% !important;
	margin-left: auto;
	margin-right: auto;
	}
}


/* .flex_2c */
.flex_2c {
  --gap: 50px;
  --flex-2c: 30%;
  display: flex;
  gap: var(--gap);
}

.flex_2c>*:first-child {
  width: var(--flex-2c);
}

.flex_2c>*:last-child {
  flex: 1;
}

@media (max-width: 520px) {
  .flex_2c {
    --gap: 20px;
  }

  .flex_2c:not(.sp_2c) {
    flex-flow: column;
  }

  .flex_2c:not(.sp_2c)>*:first-child,
  .flex_2c:not(.sp_2c)>*:last-child {
    width: 100%;
  }
}

/* -------------------------------------
見出し+テキスト+画像
.h-text-img>
div>h+p
figure>img

.h-text-img　：　見出し+テキスト　画像右
.h-text-img.left　：　画像左　見出し+テキスト
.h-text-img.center　：　画像+見出し+テキスト　縦並び
-------------------------------------*/
/* -------------------------------------
配置･･･画像の位置が基準
-------------------------------------*/
.h-text-img {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

/*配置*/
.h-text-img.right {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row;
	flex-flow: row;
}

.h-text-img.left {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-flow: row-reverse;
	flex-flow: row-reverse;
}

.h-text-img.center_t {
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-flow: column-reverse;
	flex-flow: column-reverse;
}

.h-text-img.center_b {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
}

/*画像*/
.h-text-img figure {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
}

.h-text-img.right figure {
	margin-left: 30px;
}

.h-text-img.left figure {
	margin-right: 30px;
}

.h-text-img.center_t figure {
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20px;
}

.h-text-img.center_b figure {
	margin-left: auto;
	margin-right: auto;
	margin-top: 20px;
}

.h-text-img figure.w50p {
	width: 50%;
}


/*テキスト領域*/
.h-text-img .text {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

.pdf {
	width: 100%;
	margin: 30px auto;
	text-align: center;
}


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

	/*配置*/
	.h-text-img.right.top,
	.h-text-img.left.top,
	.h-text-img.center_b.top {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-flow: column-reverse;
		flex-flow: column-reverse;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}

	/*画像*/
	.h-text-img.right figure {
		margin-left: 20px;
	}

	.h-text-img.left figure {
		margin-right: 20px;
	}

	.h-text-img.center_t figure {
		margin-bottom: 20px;
	}

	.h-text-img.center_b figure {
		margin-top: 20px;
	}

	.h-text-img.right.top figure,
	.h-text-img.left.top figure {
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 20px;
	}

	/*テキスト領域*/
	.pdf {
		margin: 20px auto;
	}
}

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

	/*配置*/
	.h-text-img.right,
	.h-text-img.left {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-flow: column-reverse;
		flex-flow: column-reverse;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}

	/*画像*/
	.h-text-img.right figure,
	.h-text-img.left figure {
		margin: 0 auto 16px;
	}

	.h-text-img figure.w50p {
		width: 100%;
	}
}
/* -------------------------------------
写真+テキスト
-------------------------------------*/
.img-text{
}
.img-text figure{
	margin: 0 auto 20px;
	width: 980px;
}
.img-text .richtext{
	margin: 0 auto 40px;
	width: 700px;
	line-height: 1.8;
}

@media screen and (max-width: 480px) {
	.img-text figure{
		width: 100%;
	}
	.img-text .richtext{
		width: 95%;
	}
}



/**------------------------------
互い違い（てれこ）画像右始まり
.tereco > * >
div>h+p
figure>img
------------------------------**/
.tereco{
}
.tereco > *{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 40px auto;
}
.tereco > *:nth-child(even){
	flex-flow: row-reverse;
}
.tereco > * > div{
	flex: 1;
}
.tereco figure{
	flex: none;
	margin: 0 0 0 30px;
}
.tereco > *:nth-child(even) figure{
	margin: 0 30px 0 0;
}

@media screen and (max-width:480px) {
	.tereco > *{
		flex-flow: column;
		margin: 20px auto;
	}
	.tereco > *:nth-child(even){
		flex-flow: column;
	}
	.tereco figure,
	.tereco > *:nth-child(even) figure{
		margin: 20px 0
	}
}

/**------------------------------
互い違い（てれこ）画像左始まり
------------------------------**/
.tereco.left > *{
	flex-flow: row-reverse;
}
.tereco.left > *:nth-child(even){
	flex-flow: row;
}
.tereco.left figure{
	margin: 0 30px 0 0;
}
.tereco.left > *:nth-child(even) figure{
	margin: 0 0 0 30px;
}

@media screen and (max-width:480px) {
	.tereco.left > *{
		flex-flow: column;
		margin: 20px auto;
	}
	.tereco.left > *:nth-child(even){
		flex-flow: column;
	}
	.tereco.left figure,
	.tereco.left > *:nth-child(even) figure{
		margin: 20px 0
	}
}

/* -------------------------------------
テーブル
-------------------------------------*/
.table table{
	margin: 30px auto;
	width: 100%;
	border-collapse:separate;
	border-spacing:1px;
	background:  #aaa;
}
.table th,
.table td{
	padding: 15px;
	vertical-align: top;
	text-align: left;
	background: #fff;
}
.table th{
	width: 25%;
	background: #f5f5f5;
	vertical-align:middle;
}

@media screen and (max-width: 480px) {
	.table table,
	.table tbody,
	.table tr,
	.table th,
	.table td{
		display: block;
		border: none;
	}
	.table table{
		border-bottom: 1px solid #aaa;
	}
	.table th,
	.table td{
		padding: 10px;
		border: 1px solid #aaa;
		border-bottom: none;
	}
	.table th{
		width: 100%;
	}
}

/* -------------------------------------
tableA
-------------------------------------*/
.tableA table,
table.tableA {
	width: 100%;
	border-top: 1px dotted red;
}

.tableA tr {
	border-bottom: 1px dotted red;
}

.tableA tr:nth-of-type(odd) {
	background: yellow;
}

.tableA tr:nth-of-type(even) {
	background: pink;
}

.tableA th,
.tableA td {
	padding: 20px 16px;
	vertical-align: top;
	text-align: left;
}

.tableA th {
	width: 25%;
	font-weight: bold;
}

.tableA td a:hover {}

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

	.tableA th,
	.tableA td {
		padding: 8px 10px;
		font-size: 14px;
	}

	.tableA th {
		min-width: 6em;
		font-size: 0.9rem;
		font-size: 13px;
	}
}


/* -------------------------------------
tableB
-------------------------------------*/
.tableB table,
table.tableB {
	width: 100%;
	border-top: 1px dotted #aaa;
	background: #fff;
	/*	border: 1px solid red;*/
}

.tableB tr {
	border-bottom: 1px dotted #aaa;
}

.tableB th,
.tableB td {
	padding: 16px 20px;
	vertical-align: middle;
	text-align: left;
}

.tableB th {
	width: 25%;
	background: #ccc;
}

.tableB td a:hover {}

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

	.tableB th,
	.tableB td {
		padding: 8px 10px;
		font-size: 14px;
	}

	.tableB th {
		width: 25%;
		min-width: 6em;
		font-size: 0.9rem;
		font-size: 13px;
	}
}


/* -------------------------------------
tableC
-------------------------------------*/
.tableC table,
table.tableC {
	width: 100%;
	border-top: 1px dotted #aaa;
	background: #fff
}

.tableC tr {
	border-bottom: 1px dotted #aaa;
}

.tableC th,
.tableC td {
	padding: 16px 20px;
	vertical-align: middle;
	text-align: left;
}

.tableC th {
	width: 25%;
	background: #ccc;
}

.tableC td a:hover {}

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

	.tableC th,
	.tableC td {
		display: block;
		width: 100%;
		font-size: 14px;
	}

	.tableC th {
		padding: 6px 10px;
	}

	.tableC td {
		padding: 6px 10px 20px;
	}
}


/* -------------------------------------
tableD
-------------------------------------*/
.tableD table,
table.tableD {
	width: 100%;
}

.tableD th,
.tableD td {
	display: block;
	width: 100%;
}

.tableD th {
	margin-bottom: 10px;
	padding: 14px;
	font-size: 1.1rem;
	font-weight: 700;
	text-align: left;
	background: #f4f4f4;
}

.tableD td {
	margin-bottom: 40px;
}

@media screen and (max-width: 480px) {
	.tableD th {
		margin-bottom: 4px;
		font-size: 0.9rem;
	}

	.tableD td {
		margin-bottom: 20px;
	}
}


/* -------------------------------------
吹き出し
-------------------------------------*/
/**塗りつぶし（下）**/
.balloon1_B {
	position: relative;
	display: inline-block;
	margin: 1.5em 0;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	background: #e0edff;
	color: #555;
	text-align: center;
	font-size: 16px;
}.balloon1_B:before {
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -5px;
	border-width: 10px 5px;
	border-style: solid;
	border-color: #e0edff transparent transparent transparent;
	content: "";
}
/**塗りつぶし（上）**/
.balloon1_T {
	position: relative;
	display: inline-block;
	margin: 1.5em 0;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	background: #e0edff;
	color: #555;
	text-align: center;
	font-size: 16px;
}.balloon1_T:before {
	position: absolute;
	top: -20px;
	left: 50%;
	margin-left: -5px;
	border-width: 10px 5px;
	border-style: solid;
	border-color: transparent transparent #e0edff  transparent;
	content: "";
}
/**塗りつぶし（左）**/
.balloon1_L {
	position: relative;
	display: inline-block;
	margin: 1.5em 0 1.5em 15px;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	background: #e0edff;
	color: #555;
	text-align: center;
	font-size: 16px;
}.balloon1_L:before {
	position: absolute;
	top: 50%;
	left: -20px;
	margin-top: -5px;
	border-width: 5px 10px;
	border-style: solid;
	border-color: transparent #e0edff transparent  transparent;
	content: "";
}
/**塗りつぶし（右）**/
.balloon1_R {
	position: relative;
	display: inline-block;
	margin: 1.5em 15px 1.5em 0;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	background: #e0edff;
	color: #555;
	font-size: 16px;
}.balloon1_R:before {
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -5px;
	border-width: 5px 10px;
	border-style: solid;
	border-color: transparent  transparent  transparent #e0edff;
	content: "";
}

/**線（下）**/
.balloon2_B {
	position: relative;
	display: inline-block;
	margin: 1.5em 0;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	border: solid 1px #555;
	background: #FFF;
	color: #555;
	text-align: center;
	font-size: 16px;
}.balloon2_B:before {
	position: absolute;
	bottom: -18px;
	left: 50%;
	z-index: 2;
	margin-left: -6px;
	border-width: 9px 6px;
	border-style: solid;
	border-color: #fff transparent  transparent  transparent;
	content: "";
}.balloon2_B:after {
	position: absolute;
	bottom: -20px;
	left: 50%;
	z-index: 1;
	margin-left: -7px;
	border-width: 10px 7px;
	border-style: solid;
	border-color: #555 transparent  transparent  transparent;
	content: "";
}
/**線（上）**/
.balloon2_T {
	position: relative;
	display: inline-block;
	margin: 1.5em 0;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	border: solid 1px #555;
	background: #FFF;
	color: #555;
	text-align: center;
	font-size: 16px;
}.balloon2_T:before {
	position: absolute;
	top: -18px;
	left: 50%;
	z-index: 2;
	margin-left: -6px;
	border-width: 9px 6px;
	border-style: solid;
	border-color:  transparent  transparent #fff  transparent;
	content: "";
}.balloon2_T:after {
	position: absolute;
	top: -20px;
	left: 50%;
	z-index: 1;
	margin-left: -7px;
	border-width: 10px 7px;
	border-style: solid;
	border-color:  transparent  transparent #555 transparent;
	content: "";
}
/**線（左）**/
.balloon2_L {
	position: relative;
	display: inline-block;
	margin: 1.5em 0 1.5em 15px;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	border: solid 1px #555;
	background: #FFF;
	color: #555;
	text-align: center;
	font-size: 16px;
}.balloon2_L:before {
	position: absolute;
	top: 50%;
	left: -18px;
	z-index: 2;
	margin-top: -6px;
	border-width: 6px 9px;
	border-style: solid;
	border-color:  transparent  #fff transparent  transparent;
	content: "";
}.balloon2_L:after {
	position: absolute;
	top: 50%;
	left: -20px;
	z-index: 1;
	margin-top: -7px;
	border-width: 7px 10px;
	border-style: solid;
	border-color:  transparent  #555 transparent  transparent;
	content: "";
}
/**線（右）**/
.balloon2_R {
	position: relative;
	display: inline-block;
	margin: 1.5em 15px 1.5em 0;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	border: solid 1px #555;
	background: #FFF;
	color: #555;
	text-align: center;
	font-size: 16px;
}.balloon2_R:before {
	position: absolute;
	top: 50%;
	right: -18px;
	z-index: 2;
	margin-top: -6px;
	border-width: 6px 9px;
	border-style: solid;
	border-color:  transparent  transparent  transparent #fff ;
	content: "";
}.balloon2_R:after {
	position: absolute;
	top: 50%;
	right: -20px;
	z-index: 1;
	margin-top: -7px;
	border-width: 7px 10px;
	border-style: solid;
	border-color:  transparent  transparent  transparent #555 ;
	content: "";
}

/* -------------------------------------
カテゴリボタン
-------------------------------------*/
.catBtn{
	display: flex;
	margin:  25px auto;

	justify-content: center;
}
.catBtn a{
	position: relative;
	display: block;
	margin: 15px;
	padding: 10px 40px 10px 20px;
	min-width: 8em;
	border: 1px solid #000;
	background: #000;
	color: #fff;
	text-align: left;
	font-weight: bold;
}
.catBtn a:after{
	position: absolute;
	right: 10px;
	content: "\e5cc";
	font-family: 'Material Icons';
}
.catBtn a:hover{
	background: #fff;
	color: #000;
}

@media screen and (max-width: 480px) {
	.catBtn{
		display: flex;
		margin:  20px auto;
		width: 100%;

		flex-wrap: wrap;
		justify-content: space-between;
	}
	.catBtn a{
		margin: 0 0 8px;
		padding: 10px 20px 10px 10px;
		min-width: 8em;
		width: 49%;
	}
}


/* -------------------------------------
写真のエフェクト
-------------------------------------*/
/**4辺ぼかし：親要素にかける**/
.blur_w {
	position: relative;
	display: inline-block;
}
.blur_w:after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,0);
	box-shadow:
	  inset 0 0 40px #fff,
	  inset 0 0 40px #fff,
	  inset 0 0 40px #fff,
	  inset 0 0 40px #fff;
	content: "";
}

/**角丸：画像に直接かけれる**/
.radius{
	border-radius: 15px;
}

/**hover時画像拡大**/
.scale {
	overflow: hidden;
}
.scale img {
	-webkit-transition: -webkit-transform 0.3s linear;
	-moz-transition: -moz-transform 0.3s linear;
	-ms-transition: -ms-transform 0.3s linear;
	-o-transition: -o-transform 0.3s linear;
	transition: transform 0.3s linear;
}
a:hover .scale img {
	-webkit-transform: scale(1.2);
	-moz-transform: scale(1.2);
	-ms-transform: scale(1.2);
	-o-transform: scale(1.2);
	transform: scale(1.2);
}

/* -------------------------------------
objedt-fit
-------------------------------------*/
.ojf img {
	width: 100%;
	height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;';  /*IE対策*/
}

/**-------------------------------------
地図 動画 iframe
-------------------------------------**/
iframe{
	width: 100%;
}
.youtube{
	margin: 30px auto 20px;
	width:100%;
	background-position: center;
	background-size:cover;
	background-repeat: no-repeat;
	padding-bottom: 56.25%;
	height:0px;
	position: relative;
}
.youtube iframe{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
@media screen and (max-width: 480px) {
	.youtube{
			margin: 20px auto 10px;
	}
}

/* -------------------------------------
パンくず
-------------------------------------*/
#breadcrumb{
	margin:10px auto;
	width:100%;
	font-size:14px;
	color: #aaa;
	padding: 8px 0;
}
/*家アイコン*/
#breadcrumb ul{
	max-width: 980px;
	margin: 0 auto;
}
#breadcrumb ul li{
	display:inline-block;
	padding:0 5px;
}
#breadcrumb ul li+li:before{
	content:"> ";
	display: inline-block;
	margin: 0 10px 0 0;
}
#breadcrumb a{
	text-decoration: underline;
}#breadcrumb a:hover{
	text-decoration: none;
}

@media screen and (max-width:480px) {
	#breadcrumb{
		margin:40px auto 0;
	}
	#breadcrumb ul{
		padding: 0 2%;
	}
}


/* -------------------------------------
ページャー
-------------------------------------*/
.pagenation{
	margin: 30px auto;
	text-align: center;
}
.pagenation span{
	display: inline-block;
	margin: 5px;
	width: 40px;
	height: 40px;
	border: 1px solid #604c3f;
	background: #fff;
	color:#604c3f;
	text-align: center;
	line-height: 38px;
}
.pagenation span.page{
	background:#604c3f;
	color: #fff;
}
.pagenation span a{
	display: block;
	width: 100%;
	height: 100%;
	background: #fff;
	color:#604c3f;
}.pagenation span a:hover{
	background: #604c3f;
	color: #fff;
}

@media screen and (max-width: 768px) {
	.pagenation span{
		margin: 3px;
		width: 30px;
		height: 30px;
		line-height: 27px;
	}
}



/* -------------------------------------
フォーム
-------------------------------------*/
/**エラー**/
.alert {
	margin: 5px 0;
	color: #ff0000;
}
form table th{
	position: relative;
}

/**必須**/
.require {
	position: absolute;
	display: inline-block;
	width: 3em;
	height: 2em;
	border-radius: 3px;
	background: #cc0000;
	color: #fff;
	text-align: center;
	font-weight: bold;
	font-size: 11px;
	line-height: 2em;
	top:50%;
	margin-top: -1em;
	right:5px;
}
/**送信ボタン**/
.form_button {
	position: relative;
	display: flex;
	margin-bottom: 20px;
	width: 100%;
	text-align: center;

	align-items: center;
	justify-content: center;
}

.form_button input[type="submit"],
.form_button input.submit,
.form_button a{
    padding: 10px 10px 10px 10px;
    border-radius: 20px;
    border: 4px solid #604c3f;
    font-weight: 800;
    color: #604c3f;
    min-width: 400px;
    text-align: center;
    font-size: 1.5em;
    line-height: 1;
    position: relative;
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 10px;
}
.form_button input[type="submit"]:hover,
.form_button input.submit:hover,
.form_button a:hover{
	background-color: #604c3f;
	color: white;
}


/*入力タグ*/
form input[type="text"],
form textarea,
form select{
	padding: 5px 4px;
	height:30px;
	border:1px solid #cccccc;
	font-size: 16px;
	line-height: 1.2;
	margin: 5px 5px;
}
form input[type="text"]{
   width: 80%;
}
form textarea {
	padding: 2px;
	min-height: 150px;
}
form select{
	padding: 0 10px;
	font-size: 14px;
}

/*電話*/
form input.owlet-input-tel1,
form input.owlet-input-tel2,
form input.owlet-input-tel3,
form input.zip1,
form input.zip2{
    width: 5em;
}
/*名前*/
form input.owlet-input-name-sei,
form input.owlet-input-name-mei{
    width: 8em;
}
/*label*/
form label {
	display: block;
}
/*ボタン*/
form button{
	margin: 0 10px;
	padding: 5px 10px;
	border-radius: 5px;
	background: #fff;
}
/*記入例*/
form .owlet-input-sample {
	margin-top: 5px;
	color: #999;
	font-size: 14px;
}
/**フォーム規約**/
.owlet-rules {
	margin: 0 auto 30px;
	width: 90%;
}
.owlet-rules-title {
	margin-bottom: 10px;
	text-align: center;
	font-weight: bold;
}
.owlet-rules-body {
	overflow-y:scroll;
	box-sizing:border-box;
	margin-bottom: 20px;
	padding:15px;
	height:200px;
	border:1px solid #dcdcdc;
}
.owlet-rules-agree {
	position: relative;
	margin-bottom: 20px;
	text-align: center;
}
.owlet-rules-agree .require{
	position: static;
	margin: 0 15px;
}
@media screen and (max-width: 768px) {
	.form_button {
		flex-flow: column-reverse;
	}
	/*iPhone独自スタイル解除*/
	form input[type="button"],
	form input[type="text"],
	form input[type="submit"] {
		border-radius: 0;

		-webkit-appearance: none;
	}
	/*入力タグ*/
    form input[type="text"],
    form textarea,
    form select{
    	font-size: 13px;
    }
}




/*layout:27*//* -------------------------------------
Browser：IE11 over
-------------------------------------
01: CSSをReset
02: /css/default.cssを変更
03: Default
-------------------------------------*/

/** ================================================================================
		01.Reset
================================================================================ **/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
h1,
h2,
h3,
h4,
h5,
h6,
dt,
th {
  font-weight: normal;
  line-height: 1.3;
}
ul,
ol {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}
table {
  border-spacing: 0;
  border-collapse: collapse;
}
/* change border colour to suit your needs */
hr {
  display: block;
  margin: 1em 0;
  padding: 0;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
}
img {
  border: none;
  line-height: 1;
  vertical-align: top;
}
b,
em,
i,
strong,
address {
  font-style: normal;
}

/** ================================================================================
		02./css/default.cssを変更
================================================================================ **/
h1,
h2,
h3,
h4,
h5,
h6 {
  clear: none;
}

/** ================================================================================
		03.Default
================================================================================ **/

:root{
    --over-width-half:calc( ( 100% - 980px ) / 2);
    --black:#010101;
    --white:#ffffff;
    --brown:#604c3f;
    --bronw2:#e7e2db;
    --red:#930a00;
    --bg01:#C6D8E2;
    --bg02:#eef5f9;
    --bg03:#3e515c;
    --kon:#191E35;
}
@media screen and (max-width: 768px) {
:root{
    --over-width-half:5%;
}
}

html {
  overflow: auto;
}
body {
  margin: 0 auto;
  background: #ffffff;
  color: #1e1e1e;
  font-size: 16px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ",
    Meiryo, "Noto Sans JP", sans-serif;
  line-height: 1.7;
  overflow: hidden;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
}

p a {
  text-decoration: underline;
}
p a:hover {
  text-decoration: none;
}

a {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}
a:hover {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

/*
a:hover img{
	opacity: 0.8;
	-ms-filter: alpha(opacity=80);
	filter: alpha(opacity=80);
}
*/

/**PC電話ボタン無効**/
a[href^="tel"] {
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  a[href^="tel"] {
    pointer-events: auto;
  }
}

hr {
  display: block;
  margin: 1em 0;
  padding: 0;
  height: 1px;
  border: 0;
  border-top: 1px solid #666666;
}

figure img {
  max-width: 100%;
}

@media screen and (max-width: 768px) {
  body {
    min-width: 100%;
    font-size: 15px;
  }
  /**post制御**/
  p {
    word-break: break-all;
  }
  table {
    width: 100%;
    word-break: break-all;
  }
  img {
    max-width: 100%;
    height: auto;
  }
  /**post制御**/
}

/* -------------------------------------
ベーススタイル設定

1.clearfix,clear
2.font
3.float
4.text-align
5.margin
6.padding
-------------------------------------*/

/*1. clearfix,clear */

/* For modern browsers */
.cf:before,
.cf:after {
  display: block;
  overflow: hidden;
  content: "";
}

.cf:after {
  clear: both;
}

.clear {
  clear: both;
}

/*2. font 必要なら追加　優先順位：高*/
body .fw-b {
  font-weight: 800;
}
body .fz14 {
  font-size: 0.87rem; /*13*/
}
body .fz15 {
  font-size: 0.94rem; /*14*/
}
body .fz16 {
  font-size: 16px; /*16*/
}
body .fz17 {
  font-size: 17px; /*16*/
}
body .fz18 {
  font-size: 18px; /*16*/
}
body .fz20 {
  font-size: 20px; /*16*/
}
body .fz22 {
  font-size: 22px; /*16*/
}
body .fz24 {
  font-size: 24px; /*18*/
}
body .fz26 {
  font-size: 26px; /*20*/
}
body .fz28 {
  font-size: 28px; /*20*/
}
body .fz30 {
  font-size: 30px; /*28*/
}
body .fz32 {
  font-size: 32px; /*28*/
}
body .fz35 {
  font-size: 35px; /*28*/
}
body .fz40 {
  font-size: 40px; /*36*/
}
body .fz44 {
  font-size: 44px; /*36*/
}
body .fz46 {
  font-size: 46px; /*40*/
}
body .fz50 {
  font-size: 50px; /*40*/
}
body .fz54 {
  font-size: 54px; /*42*/
}
body .fz60 {
  font-size: 60px; /*42*/
}
body .fz70 {
  font-size: 70px; /*42*/
}

@media screen and (max-width: 768px) {
  body .fz16 {
    font-size: 15px; /*16*/
  }
  body .fz17 {
    font-size: 15px; /*16*/
  }
  body .fz18 {
    font-size: 16px; /*16*/
  }
  body .fz20 {
    font-size: 16px; /*16*/
  }
  body .fz22 {
    font-size: 16px; /*16*/
  }
  body .fz24 {
    font-size: 18px; /*18*/
  }
  body .fz26 {
    font-size: 22px; /*20*/
  }
  body .fz28 {
    font-size: 24px; /*20*/
  }
  body .fz30 {
    font-size: 26px; /*28*/
  }
  body .fz32 {
    font-size: 28px; /*28*/
  }
  body .fz35 {
    font-size: 30px; /*28*/
  }
  body .fz40 {
    font-size: 36px; /*36*/
  }
  body .fz44 {
    font-size: 36px; /*36*/
  }
  body .fz46 {
    font-size: 40px; /*40*/
  }
  body .fz50 {
    font-size: 42px; /*40*/
  }
  body .fz54 {
    font-size: 42px; /*42*/
  }
  body .fz60 {
    font-size: 46px; /*42*/
  }
  body .fz70 {
    font-size: 48px; /*42*/
  }
}

@media screen and (max-width: 480px) {
  body .fz26 {
    font-size: 5vw;
  }
  body .fz28 {
    font-size: 5vw;
  }
  body .fz30 {
    font-size: 5vw;
  }
  body .fz32 {
    font-size: 6vw;
  }
  body .fz35 {
    font-size: 5.8vw;
  }
  body .fz40 {
    font-size: 7vw;
  }
  body .fz44 {
    font-size: 7vw;
  }
  body .fz46 {
    font-size: 7vw;
  }
  body .fz50 {
    font-size: 7vw;
  }
  body .fz54 {
    font-size: 7vw;
  }
  body .fz60 {
    font-size: 8.8vw;
  }
  body .fz70 {
    font-size: 8.8vw;
  }
}

/*3. float */
.f_L {
  display: inline;
  float: left;
}
.f_R {
  display: inline;
  float: right;
}

/*4. text-align 優先順位：高 */
body .t_R {
  text-align: right;
}
body .t_L {
  text-align: left;
}
body .t_C {
  text-align: center;
}

/*5. margin 必要なら追加　優先順位：高 */
/*5. margin 30以上は1/2 */
body .m0 {
  margin: 0;
}
body .mb0 {
  margin-bottom: 0;
}
body .mb5 {
  margin-bottom: 5px;
}
body .mb10 {
  margin-bottom: 10px;
}
body .mb15 {
  margin-bottom: 15px;
}
body .mb20 {
  margin-bottom: 20px;
}
body .mb30 {
  margin-bottom: 30px;
}
body .mb40 {
  margin-bottom: 40px;
}
body .mb50 {
  margin-bottom: 50px;
}
body .mb70 {
  margin-bottom: 70px;
}
body .mb80 {
  margin-bottom: 80px;
}
body .mb100 {
  margin-bottom: 100px;
}
body .mb150 {
  margin-bottom: 150px;
}
body .mt0 {
  margin-top: 0px;
}
body .mt5 {
  margin-top: 5px;
}
body .mt10 {
  margin-top: 10px;
}
body .mt15 {
  margin-top: 15px;
}
body .mt20 {
  margin-top: 20px;
}
body .mt30 {
  margin-top: 30px;
}
body .mt40 {
  margin-top: 40px;
}
body .mt50 {
  margin-top: 50px;
}
body .mt70 {
  margin-top: 70px;
}
body .mt80 {
  margin-top: 80px;
}
body .mt100 {
  margin-top: 100px;
}
body .mt150 {
  margin-top: 150px;
}
body .ml0 {
  margin-left: 0;
}
body .ml5 {
  margin-left: 5px;
}
body .ml10 {
  margin-left: 10px;
}
body .ml15 {
  margin-left: 15px;
}
body .ml20 {
  margin-left: 20px;
}
body .ml30 {
  margin-left: 30px;
}
body .mr0 {
  margin-right: 0;
}
body .mr5 {
  margin-right: 5px;
}
body .mr10 {
  margin-right: 10px;
}
body .mr15 {
  margin-right: 15px;
}
body .mr20 {
  margin-right: 20px;
}
body .mr30 {
  margin-right: 30px;
}

@media screen and (max-width: 768px) {
  /*5. margin 30以上は1/2 */
  body .mb20 {
    margin-bottom: 15px;
  }
  body .mb30 {
    margin-bottom: 20px;
  }
  body .mb40 {
    margin-bottom: 20px;
  }
  body .mb50 {
    margin-bottom: 25px;
  }
  body .mb70 {
    margin-bottom: 35px;
  }
  body .mb80 {
    margin-bottom: 40px;
  }
  body .mb100 {
    margin-bottom: 50px;
  }
  body .mb150 {
    margin-bottom: 75px;
  }
  body .mt20 {
    margin-top: 15px;
  }
  body .mt30 {
    margin-top: 20px;
  }
  body .mt40 {
    margin-top: 20px;
  }
  body .mt50 {
    margin-top: 25px;
  }
  body .mt70 {
    margin-top: 35px;
  }
  body .mt80 {
    margin-top: 40px;
  }
  body .mt100 {
    margin-top: 50px;
  }
  body .mt150 {
    margin-top: 75px;
  }
}

/*6. padding 優先順位:高*/
body .p0 {
  padding: 0;
}
body .plr5 {
  padding: 0 5px;
}
body .plr10 {
  padding: 0 10px;
}
body .plr15 {
  padding: 0 15px;
}
body .plr20 {
  padding: 0 20px;
}
body .ptb10 {
  padding: 10px 0;
}
body .ptb20 {
  padding: 20px 0;
}
body .pall10 {
  padding: 10px;
}
body .pall20 {
  padding: 20px;
}
body .p0 {
  padding: 0;
}
body .pb0 {
  padding-bottom: 0;
}
body .pb5 {
  padding-bottom: 5px;
}
body .pb10 {
  padding-bottom: 10px;
}
body .pb15 {
  padding-bottom: 15px;
}
body .pb20 {
  padding-bottom: 20px;
}
body .pb30 {
  padding-bottom: 30px;
}
body .pb40 {
  padding-bottom: 40px;
}
body .pb50 {
  padding-bottom: 50px;
}
body .pb70 {
  padding-bottom: 70px;
}
body .pb80 {
  padding-bottom: 80px;
}
body .pb100 {
  padding-bottom: 100px;
}
body .pb150 {
  padding-bottom: 150px;
}
body .pt0 {
  padding-top: 0px;
}
body .pt5 {
  padding-top: 5px;
}
body .pt10 {
  padding-top: 10px;
}
body .pt15 {
  padding-top: 15px;
}
body .pt20 {
  padding-top: 20px;
}
body .pt30 {
  padding-top: 30px;
}
body .pt40 {
  padding-top: 40px;
}
body .pt50 {
  padding-top: 50px;
}
body .pt70 {
  padding-top: 70px;
}
body .pt80 {
  padding-top: 80px;
}
body .pt100 {
  padding-top: 100px;
}
body .pt150 {
  padding-top: 150px;
}
body .pl0 {
  padding-left: 0;
}
body .pl5 {
  padding-left: 5px;
}
body .pl10 {
  padding-left: 10px;
}
body .pl15 {
  padding-left: 15px;
}
body .pl20 {
  padding-left: 20px;
}
body .pl30 {
  padding-left: 30px;
}
body .pr0 {
  padding-right: 0;
}
body .pr5 {
  padding-right: 5px;
}
body .pr10 {
  padding-right: 10px;
}
body .pr15 {
  padding-right: 15px;
}
body .pr20 {
  padding-right: 20px;
}
body .pr30 {
  padding-right: 30px;
}

@media screen and (max-width: 768px) {
  body .pb20 {
    padding-bottom: 15px;
  }
  body .pb30 {
    padding-bottom: 20px;
  }
  body .pb40 {
    padding-bottom: 20px;
  }
  body .pb50 {
    padding-bottom: 25px;
  }
  body .pb70 {
    padding-bottom: 35px;
  }
  body .pb80 {
    padding-bottom: 40px;
  }
  body .pb100 {
    padding-bottom: 50px;
  }
  body .pb150 {
    padding-bottom: 75px;
  }
  body .pt20 {
    padding-top: 15px;
  }
  body .pt30 {
    padding-top: 20px;
  }
  body .pt40 {
    padding-top: 20px;
  }
  body .pt50 {
    padding-top: 25px;
  }
  body .pt70 {
    padding-top: 35px;
  }
  body .pt80 {
    padding-top: 40px;
  }
  body .pt100 {
    padding-top: 50px;
  }
  body .pt150 {
    padding-top: 75px;
  }
}

/* -------------------------------------
幅
-------------------------------------*/
body .w100p,
body .w1100,
body .w1000,
body .w980,
body .w900,
body .w800,
body .w700,
body .w650,
body .w600 {
  margin-right: auto;
  margin-left: auto;
}
body .w100p {
  width: 100%;
}
body .w1100 {
  width: 1100px;
}
body .w1000 {
  width: 1000px;
}
body .w980 {
  width: 980px;
}
body .w900 {
  width: 900px;
}
body .w800 {
  width: 800px;
}
body .w700 {
  width: 700px;
}
body .w650 {
  width: 650px;
}
body .w600 {
  width: 600px;
}

@media screen and (max-width: 768px) {
  body .w100p,
  body .w1100,
  body .w1000,
  body .w980,
  body .w900,
  body .w800,
  body .w700,
  body .w650,
  body .w600 {
    margin-right: auto;
    margin-left: auto;
  }
  body .w100p {
    width: 100%;
  }
  body .w1100 {
    width: 100%;
  }
  body .w1000 {
    width: 100%;
  }
  body .w980 {
    width: 100%;
  }
  body .w900 {
    width: 100%;
  }
  body .w800 {
    width: 100%;
  }
  body .w700 {
    width: 100%;
  }
  body .w650 {
    width: 100%;
  }
  body .w600 {
    width: 100%;
  }
  body .w100p > *,
  body .w1100 > *,
  body .w1000 > *,
  body .w980 > *,
  body .w900 > *,
  body .w800 > *,
  body .w700 > *,
  body .w650 > *,
  body .w600 > * {
    margin-right: auto;
    margin-left: auto;
    width: 90%;
  }
  body .w100p > .max,
  body .w100p.max,
  body .w1100 > .max,
  body .w1100.max,
  body .w1000 > .max,
  body .w1000.max,
  body .w980 > .max,
  body .w980.max,
  body .w900 > .max,
  body .w900.max,
  body .w800 > .max,
  body .w800.max,
  body .w700 > .max,
  body .w700.max,
  body .w650 > .max,
  body .w650.max,
  body .w600 > .max,
  body .w600.max {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

body .calc980 {
  padding-right: calc((100% - 980px) / 2);
  padding-left: calc((100% - 980px) / 2);
}

@media screen and (max-width: 768px) {
  body .calc980 {
    padding-right: 0;
    padding-left: 0;
  }
  body .calc980 > .max {
    width: 100%;
  }
  body .calc980 > * {
    margin-right: auto;
    margin-left: auto;
    width: 90%;
  }
}

/* -------------------------------------
文字装飾
-------------------------------------*/
/**黄色マーカー**/
b.liner {
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(50%, transparent),
    color-stop(0%, var(--yell3))
  );
  background: linear-gradient(transparent 50%, var(--yell3) 0%);
}

/* -------------------------------------
改行
-------------------------------------*/
.pc {
}
.sp {
  display: none;
}
.ib {
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}

/* -------------------------------------
写真のエフェクト
-------------------------------------*/
/**4辺ぼかし：親要素にかける**/
.blur_w {
  position: relative;
  display: inline-block;
}
.blur_w:after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0);
  -webkit-box-shadow: inset 0 0 40px #fff, inset 0 0 40px #fff,
    inset 0 0 40px #fff, inset 0 0 40px #fff;
  box-shadow: inset 0 0 40px #fff, inset 0 0 40px #fff, inset 0 0 40px #fff,
    inset 0 0 40px #fff;
  content: "";
}

/**角丸：画像に直接かけれる**/
.radius {
  /*	border-radius: 15px;*/
  border-radius: 10px;
}

/**hover時画像拡大**/
.scale {
  overflow: hidden;
}
.scale img {
  -webkit-transition: -webkit-transform 0.3s linear;
  transition: -webkit-transform 0.3s linear;
  transition: transform 0.3s linear;
  transition: transform 0.3s linear, -webkit-transform 0.3s linear;
}
a:hover .scale img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

/**-------------------------------------
地図 動画 iframe
-------------------------------------**/
iframe {
  width: 100%;
}
.youtube {
  position: relative;
  margin: 30px auto 20px;
  padding-bottom: 56.25%;
  width: 100%;
  height: 0px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .youtube {
    margin: 20px auto 10px;
  }
}

/* -------------------------------------
吹き出し
-------------------------------------*/
/**塗りつぶし（下）**/
.balloon1_B {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  background: #e0edff;
  color: #555;
  text-align: center;
  font-size: 16px;
}
.balloon1_B:before {
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 10px 5px;
  border-style: solid;
  border-color: #e0edff transparent transparent transparent;
  content: "";
}
/**塗りつぶし（上）**/
.balloon1_T {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  background: #e0edff;
  color: #555;
  text-align: center;
  font-size: 16px;
}
.balloon1_T:before {
  position: absolute;
  top: -20px;
  left: 50%;
  margin-left: -5px;
  border-width: 10px 5px;
  border-style: solid;
  border-color: transparent transparent #e0edff transparent;
  content: "";
}
/**塗りつぶし（左）**/
.balloon1_L {
  position: relative;
  display: inline-block;
  margin: 1.5em 0 1.5em 15px;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  background: #e0edff;
  color: #555;
  text-align: center;
  font-size: 16px;
}
.balloon1_L:before {
  position: absolute;
  top: 50%;
  left: -20px;
  margin-top: -5px;
  border-width: 5px 10px;
  border-style: solid;
  border-color: transparent #e0edff transparent transparent;
  content: "";
}
/**塗りつぶし（右）**/
.balloon1_R {
  position: relative;
  display: inline-block;
  margin: 1.5em 15px 1.5em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  background: #e0edff;
  color: #555;
  font-size: 16px;
}
.balloon1_R:before {
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -5px;
  border-width: 5px 10px;
  border-style: solid;
  border-color: transparent transparent transparent #e0edff;
  content: "";
}

/**線（下）**/
.balloon2_B {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  border: solid 1px #555;
  background: #fff;
  color: #555;
  text-align: center;
  font-size: 16px;
}
.balloon2_B:before {
  position: absolute;
  bottom: -18px;
  left: 50%;
  z-index: 2;
  margin-left: -6px;
  border-width: 9px 6px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  content: "";
}
.balloon2_B:after {
  position: absolute;
  bottom: -20px;
  left: 50%;
  z-index: 1;
  margin-left: -7px;
  border-width: 10px 7px;
  border-style: solid;
  border-color: #555 transparent transparent transparent;
  content: "";
}
/**線（上）**/
.balloon2_T {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  border: solid 1px #555;
  background: #fff;
  color: #555;
  text-align: center;
  font-size: 16px;
}
.balloon2_T:before {
  position: absolute;
  top: -18px;
  left: 50%;
  z-index: 2;
  margin-left: -6px;
  border-width: 9px 6px;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  content: "";
}
.balloon2_T:after {
  position: absolute;
  top: -20px;
  left: 50%;
  z-index: 1;
  margin-left: -7px;
  border-width: 10px 7px;
  border-style: solid;
  border-color: transparent transparent #555 transparent;
  content: "";
}
/**線（左）**/
.balloon2_L {
  position: relative;
  display: inline-block;
  margin: 1.5em 0 1.5em 15px;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  border: solid 1px #555;
  background: #fff;
  color: #555;
  text-align: center;
  font-size: 16px;
}
.balloon2_L:before {
  position: absolute;
  top: 50%;
  left: -18px;
  z-index: 2;
  margin-top: -6px;
  border-width: 6px 9px;
  border-style: solid;
  border-color: transparent #fff transparent transparent;
  content: "";
}
.balloon2_L:after {
  position: absolute;
  top: 50%;
  left: -20px;
  z-index: 1;
  margin-top: -7px;
  border-width: 7px 10px;
  border-style: solid;
  border-color: transparent #555 transparent transparent;
  content: "";
}
/**線（右）**/
.balloon2_R {
  position: relative;
  display: inline-block;
  margin: 1.5em 15px 1.5em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  border: solid 1px #555;
  background: #fff;
  color: #555;
  text-align: center;
  font-size: 16px;
}
.balloon2_R:before {
  position: absolute;
  top: 50%;
  right: -18px;
  z-index: 2;
  margin-top: -6px;
  border-width: 6px 9px;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
  content: "";
}
.balloon2_R:after {
  position: absolute;
  top: 50%;
  right: -20px;
  z-index: 1;
  margin-top: -7px;
  border-width: 7px 10px;
  border-style: solid;
  border-color: transparent transparent transparent #555;
  content: "";
}

/* -------------------------------------
横並びボックスの数
-------------------------------------*/
/**２つ並び**/
.box2C {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.box2C > * {
  width: 48%;
}
.box2C:after {
  display: block;
  width: 48%;
  content: "";
}

/**3つ並び**/
.box3C {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.box3C > * {
  width: 32%;
}
.box3C:after {
  display: block;
  width: 32%;
  content: "";
}

/**4つ並び**/
.box4C {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.box4C > * {
  width: 24.5%;
}
.box4C:after,
.box4C:before {
  display: block;
  width: 24.5%;
  content: "";
}
.box4C:before {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

@media screen and (max-width: 768px) {
  /* -------------------------------------
横並びボックスの数
-------------------------------------*/
  /**２つ並び**/
  .box2C {
    width: 100%;
  }
  .box2C.box1C_sp {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
  }
  .box2C.box2C_sp {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .box2C.box1C_sp > * {
    width: 100%;
  }
  .box2C.box1C_sp:after {
    display: none;
  }
  .box2C.box2C_sp > *,
  .box2C.box2C_sp::after {
    width: 48%;
  }
  .box2C.box2C_sp.sp1c > *,
  .box2C.box2C_sp.sp1c::after {
    /*		min-width: 300px;*/
  }

  /**3つ並び**/
  .box3C {
    width: 100%;
  }
  .box3C.box1C_sp {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
  }
  .box3C.box2C_sp {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .box3C.box3C_sp {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .box3C.box1C_sp > * {
    width: 100%;
  }
  .box3C.box1C_sp:after {
    display: none;
  }
  .box3C.box2C_sp > *,
  .box3C.box2C_sp::after {
    width: 48%;
  }
  .box3C.box3C_sp > *,
  .box3C.box3C_sp::after {
    width: 31%;
  }

  /**4つ並び**/
  .box4C {
    width: 100%;
  }
  .box4C.box1C_sp {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
  }
  .box4C.box2C_sp {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .box4C.box1C_sp > * {
    width: 100%;
  }
  .box4C.box2C_sp > * {
    width: 48%;
  }
  .box4C:after,
  .box4C:before {
    display: none;
  }
}

@media screen and (max-width: 480px) {
  /* -------------------------------------
横並びボックスの数
-------------------------------------*/
  .sp1c {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column !important;
  }
  .sp1c > *,
  .sp1c::after {
    width: 100% !important;
    margin-left: auto;
    margin-right: auto;
  }
}

/* -------------------------------------
配置
-------------------------------------*/
.h-text-img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.h-text-img.right {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row;
  flex-flow: row;
}
.h-text-img.left {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-flow: row-reverse;
  flex-flow: row-reverse;
}
.h-text-img.center_t {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-flow: column-reverse;
  flex-flow: column-reverse;
}
.h-text-img.center_b {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column;
  flex-flow: column;
}
.h-text-img figure {
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
}
.h-text-img.right figure {
  margin-left: 30px;
}
.h-text-img.left figure {
  margin-right: 30px;
}
.h-text-img.center_t figure {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
}
.h-text-img.center_b figure {
  margin-left: auto;
  margin-right: auto;
  margin-top: 20px;
}
.h-text-img .text {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.pdf {
  width: 100%;
  margin: 30px auto;
  text-align: center;
}
figure.w50p {
  width: 50%;
}

@media screen and (max-width: 768px) {
  .h-text-img.right figure,
  .h-text-img.left figure {
    min-width: 300px;
    margin: 0 16px;
  }
  .h-text-img.right .text,
  .h-text-img.left .text {
    min-width: 300px;
    margin: 0 16px;
  }
  .h-text-img.center_t {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
  }
  .h-text-img.right.top,
  .h-text-img.left.top,
  .h-text-img.center_t.top,
  .h-text-img.center_b.top {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse;
    flex-flow: column-reverse;
  }
  .pdf {
    margin: 20px auto;
  }
}

@media screen and (max-width: 480px) {
  .h-text-img.right,
  .h-text-img.left,
  .h-text-img.center_t,
  .h-text-img.center_b {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
  }
  .h-text-img.right.sp-top,
  .h-text-img.left.sp-top {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse;
    flex-flow: column-reverse;
  }
  .h-text-img.right figure,
  .h-text-img.left figure,
  .h-text-img.center_t figure,
  .h-text-img.center_b figure {
    margin: 15px auto;
  }
  .h-text-img.right .text,
  .h-text-img.left .text {
    min-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}

/* -------------------------------------
テーブル
-------------------------------------*/
/*外枠なし th＝25%*/
.tableA table,
table.tableA {
  margin: 30px auto;
  width: 100%;
  border: none;
}
.tableA table *,
table.tableA *{
   border:none;   
}

.tableA th,
.tableA td {
  padding: 15px 20px;
  /*	border: 1px dotted #666;*/
  border-top: 1px dotted #666;
  border-bottom: 1px dotted #666;
  vertical-align: top;
  text-align: left;
}
.tableA th {
  width: 25%;
  /*	vertical-align:middle;*/
  background: var(--bg01);
  border-left: none;
}
.tableA td {
  border-right: none;
}

.tableA tr:nth-of-type(odd) {
	background: var(--white);
}

.tableA tr:nth-of-type(even) {
	background: var(--bg02);
}

@media screen and (max-width: 768px) {
  /*外枠なし th＝25%*/
  /*th＝25%*/
  .tableA table,
  .tableA tbody,
  .tableA tr,
  .tableA th,
  .tableA td {
    font-size: 0.85rem;
    display: block;
    width: 100%;
  }

  .tableA th,
  .tableA td {
    padding: 10px;
    width: 100%;
  }

  /*th＝100%*/
  .tableA.th100p_sp table,
  .tableA.th100p_sp tbody,
  .tableA.th100p_sp tr,
  .tableA.th100p_sp th,
  .tableA.th100p_sp td {
    display: block;
    border: none;
  }
  .tableA.th100p_sp table,
  table.tableA.th100p_sp {
    border-bottom: 1px dotted #666;
  }
  .tableA.th100p_sp th,
  .tableA.th100p_sp td {
    padding: 10px 10px 14px;
    /*		border: 1px dotted #666;*/
    border-bottom: none;
  }
  .tableA.th100p_sp th {
    width: 100%;
    padding: 8px 10px;
    font-size: 0.9em;
  }
}


/* CSS Document */
/* -------------------------------------

-------------------------------------
01:共通
02:テンプレート
03:ページ
-------------------------------------*/
body {
  min-width: 1000px;
}
.t_CL {
  text-align: center;
}

img {
  max-width: 100%;
}

:root {
  --yell: #f8d213;
  --yell2: #fbe889;
  --yell3: #f1c11c;
  --yell4: rgba(243, 202, 120, 0.2);
  --brown: #4b2611;
  --brown2: #c4b9b2;
  --gray: #8e8e8e;
  --calc1000: calc((100% - 1000px) / 2);
  --calc980: calc((100% - 980px) / 2);
}

@media screen and (max-width: 768px) {
  body {
    min-width: 100%;
  }
  .t_CL {
    text-align: left;
  }

  :root {
    --calc1000: 4%;
    --calc980: 4%;
  }
}

/* -------------------------------------
背景
-------------------------------------*/
.bg-bubble {
  background: url(/common/images/bg01.png) no-repeat top center / cover,
    linear-gradient(
      to bottom,
      rgba(243, 202, 120, 0.2) 0%,
      rgba(255, 231, 153, 0.2) 13%,
      rgba(254, 251, 232, 0.2) 50%
    ),
    linear-gradient(
      to bottom,
      rgba(254, 251, 232, 0.2) 60%,
      rgba(254, 251, 232, 0.2) 100%
    );
}

.bg-plaid {
  background: url(/common/images/bg02.png);
}

body .pt100 {
  padding-top: 100px;
}
body .pt150 {
  padding-top: 150px;
}
body .pb100 {
  padding-bottom: 100px;
}
body .pb150 {
  padding-bottom: 150px;
}

@media screen and (max-width: 768px) {
  body .pt100 {
    padding-top: 50px;
  }
  body .pt150 {
    padding-top: 75px;
  }
  body .pb100 {
    padding-bottom: 50px;
  }
  body .pb150 {
    padding-bottom: 75px;
  }
}

/* -------------------------------------
文字
-------------------------------------*/

/*色*/

/* -------------------------------------
ヘッダー
-------------------------------------*/
.all_header {
  display: flex;
  padding: 10px var(--calc1000);
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  background: #fff;
}

.all_header h1 a {
  display: flex;
  align-items: flex-end;
  margin-bottom: 10px;
}

.all_header h1 strong {
  background: var(--brown);
  color: #fff;
  display: inline-block;
  font-size: 14px;
  font-weight: normal;
  padding: 5px 15px;
  margin: 0 10px;
}

.all_header h1 img {
  width: 240px;
}

.all_header nav {
  margin: 10px 0;
  color: var(--brown);
  font-weight: 800;
}

.all_header nav ul {
  display: flex;
  justify-content: center;
}

.all_header nav ul li a {
  display: block;
  padding: 8px 15px;
}

.all_header nav ul li a:hover {
  color: var(--yell);
}

@media screen and (max-width: 768px) {
  .all_header {
    height: 60px;
    padding: 15px;
  }

  .all_header h1 {
    margin: 0;
  }

  .all_header h1 img {
    width: 180px;
  }
  .all_header h1 strong {
    font-size: 12px;
    padding: 3px 10px;
    margin: 0 5px;
  }

  .all_header nav {
    position: fixed;
    top: 0;
    right: -300px;
    z-index: 1000;
    box-sizing: border-box;
    padding-top: 60px;
    width: 300px;
    height: 100%;
    background: var(--brown);
    font-size: 16px;
    justify-content: flex-start;
    align-items: flex-start;
    margin: 0;
  }

  .all_header nav ul {
    width: 100%;
    flex-flow: column;
  }

  .all_header nav ul li a {
    display: block;
    padding: 10px 28px;
    color: #fff;
    text-decoration: none;
  }

  .all_header nav ul li a:hover {
    background: #fff;
    color: var(--black);
  }

  .all_header .hamburger {
    position: fixed;
    display: block;
    top: 0;
    right: 0;
    z-index: 3;
    z-index: 1500;
    box-sizing: border-box;
    width: 60px;
    height: 60px;
    font-size: 11px;
    cursor: pointer;
    -webkit-transition: all 400ms;
    transition: all 400ms;
    background: var(--brown);
    color: #fff;
  }

  .all_header .hamburger:after {
    position: absolute;
    right: 0;
    left: 0;
    bottom: 5px;
    margin: 0 auto;
    content: "MENU";
    text-align: center;
    letter-spacing: 1x;
  }

  .all_header .hamburger.open:after {
    color: #fff;
    content: "CLOSE";
    letter-spacing: 0;
  }

  .all_header .hamburger span {
    position: absolute;
    width: 40px;
    height: 2px;
    background: #fff;
    -webkit-transition: all 400ms;
    transition: all 400ms;
    right: 0;
    left: 0;
    margin: 0 auto;
  }

  .all_header .hamburger span:nth-child(1) {
    top: 10px;
  }

  .all_header .hamburger span:nth-child(2) {
    top: 20px;
  }

  .all_header .hamburger span:nth-child(3) {
    top: 30px;
  }

  .all_header .hamburger.open {
    background: none;
  }

  .all_header .hamburger.open span {
    background: #fff;
  }

  .all_header .hamburger.open span:nth-child(1) {
    top: 20px;
    transform: rotate(45deg);
  }

  .all_header .hamburger.open span:nth-child(2) {
    display: none;
  }

  .all_header .hamburger.open span:nth-child(3) {
    top: 20px;
    transform: rotate(-45deg);
  }

  .btn_nav {
    position: fixed;
    justify-content: space-between;
    z-index: 1000;
    left: 0;
    bottom: 0;
    width: 100%;
    background: var(--brown);
    display: flex;
    color: #fff;
  }

  .btn_nav a {
    padding: 10px 0;
  }

  .btn_nav .btn {
    width: auto;
    font-size: 16px;
    flex: 1;
    background: var(--yell);
    color: var(--brown);
    font-weight: 800;
    text-align: center;
    padding-top: 15px;
  }
  
    .btn_nav .btn.recB{
      display: none;
    }

  .btn_nav .btn span {
    margin-right: 3px;
  }

  .btn_nav a[href^="tel"] {
    font-size: 20px;
    flex: 1;
    text-align: center;
    line-height: 1;
  }

  .btn_nav a[href^="tel"] p {
    font-size: 9px;
    text-align: center;
  }
}

/* -------------------------------------
フッター
-------------------------------------*/
footer {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: column wrap;
  flex-flow: column wrap;
  padding: 80px 0 50px;
  text-align: center;
  background: url(/common/images/bg03.png) no-repeat bottom -330px left -330px /
      660px auto,
    url(/common/images/bg03.png) no-repeat bottom -330px right -330px / 660px auto;
  color: var(--brown);
}

footer h1 {
  margin: 0 auto;
}

footer h1 img {
  width: 380px;
}

footer p {
  margin: 50px 0 0;
  line-height: 2;
  font-size: 16px;
}

footer a {
  text-decoration: none;
}

/*コピーライト*/
.copyright {
  width: 100%;
  font-size: 14px;
  color: var(--gray);
  margin: 50px 0 0;
}

@media screen and (max-width: 768px) {
  footer {
    padding: 30px 5% 80px;
    background: url(/common/images/bg03.png) no-repeat bottom -110px left -200px /
        330px auto,
      url(/common/images/bg03.png) no-repeat bottom -110px right -200px / 330px auto;
  }

  footer h1 img {
    width: 250px;
  }

  footer p {
    margin: 20px 0 0;
    font-size: 14px;
  }
}

/**================================================== 
 common
================================================== **/

/**------------------------------ 
fz
 ------------------------------**/
.fz36 {
  font-size: 36px;
}

@media screen and (max-width: 768px) {
  .fz36 {
    font-size: 22px;
  }
}

/**------------------------------ 
タイトル
 ------------------------------**/

.pagetitle {
  background: url(/common/images/title2.jpg) no-repeat center center / cover;
  padding: 100px 0 80px;
  text-align: center;
  color: #fff;
  position: relative;
}
.pagetitle:after {
  content: "";
  width: 100%;
  height: 100%;
  background: var(--brown2);
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  mix-blend-mode: multiply;
}
.pagetitle .pic {
  width: 450px;
  position: absolute;
  right: 20px;
  top: 20px;
  z-index: 10;
}
.pagetitle h2 {
  font-size: 28px;
  font-weight: 800;
  margin-bottom: 30px;
  position: relative;
  z-index: 10;
}

.titA {
  color: var(--kon);
  font-weight: 800;
  line-height: 1.8;
}

.titB {
  color: var(--bg01);
  text-align: center;
  font-weight: 800;
  font-size: 18px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 10px auto;
}

.titB img {
  width: 70px;
  margin: 0 15px;
}

@media screen and (max-width: 768px) {
  .titB img {
    width: 60px;
  }
  .pagetitle .pic{
    z-index: 7;
  }
}

/**------------------------------ 
ボタン
 ------------------------------**/
.btnA,
.btnB {
  position: relative;
  display: block;
  margin-right: auto;
  margin-left: auto;
  padding: 15px;
  text-align: center;
  font-size: 1.5em;
  cursor: pointer;
  border-radius: 50px;
  font-weight: 800;
}
.btnA:after,
.btnB:after {
  display: inline-block;
  margin: auto 10px auto 0;
  vertical-align: middle;
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  width: 20px;
  height: 20px;
  line-height: 20px;
  position: absolute;
  top: 50%;
  right: 5px;
  transform: translateY(-50%);
}

.btnA {
  color: var(--white);
  border: 1px solid var(--red);
  background: var(--red);
  max-width: 400px;
  margin: 40px auto 0;
}
.btnA:hover {
  background: #fff;
  color:var(--red);
}

.btnB {
  color: var(--kon);
  border: 1px solid var(--white);
  background: var(--white);
  max-width: 400px;
  margin: 40px auto 0;
}
.btnB:hover {
  background: var(--kon);
  color: var(--white);
}

/*  -------------------------------------
  カテゴリボタン
  -------------------------------------*/
.catBtn {
  display: flex;
  margin: 25px auto;

  justify-content: space-between;
  flex-wrap: wrap;
  text-align: center;
}

.catBtn:after {
  content: "";
  width: 23%;
}
.catBtn:before {
  content: "";
  width: 23%;
  order: 1;
}

.catBtn a {
  position: relative;
  display: block;
  margin: 10px 0;
  padding: 10px;
  width: 23%;
  border: 1px solid var(--brown);
  background: #fff;
  color: var(--brown);
  font-weight: 800;
}
/*.catBtn a:after {
  position: absolute;
  right: 10px;
  content: "\e5cc";
  font-family: "Material Icons Sharp";
}*/
.catBtn a:hover,
.catBtn a.current {
  background: var(--yell3);
}

@media screen and (max-width: 768px) {
  .catBtn {
    display: flex;
    margin: 20px auto;
    width: 100%;

    flex-wrap: wrap;
    justify-content: space-between;
  }
  .catBtn a {
    margin: 0 0 8px;
    padding: 10px;
    min-width: 8em;
    width: 49%;
  }
  
  .btnA,
  .btnB{
      font-size: 1.2em;
  }
}

/**================================================== 
page 
================================================== **/

/**------------------------------ 
TOP
 ------------------------------**/

.all_hero {
  position: relative;
}

.all_hero .catch {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  z-index: 10;
  width: 100%;
  text-align: center;
  color: #fff;
  text-shadow: -2px 2px 3px rgba(0, 0, 0, 0.1);
}

.all_hero .catch h2 {
  font-weight: 800;
  font-size: 52px;
  margin-bottom: 20px;
}

.all_hero .catch p {
  font-size: 18px;
}

.all_hero .pic {
  position: absolute;
  bottom: 50px;
  right: 150px;
  width: 430px;
  z-index: 9;
}

.all_hero .listbtn {
  position: absolute;
  bottom: 20px;
  right: 20px;
  z-index: 10;
}

.all_hero .listbtn.onfix {
  position: fixed;
}

.all_hero .slider_inner:before {
  content: "";
  width: 100%;
  height: 100%;
  background: var(--brown2);
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  mix-blend-mode: multiply;
}

.all_hero .slick-slide {
  position: relative;
}

.all_hero .slick-slide img {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .all_hero .catch {
    top: 45%;
  }

  .all_hero .catch h2 {
    font-weight: 800;
    font-size: 23px;
    margin-bottom: 20px;
  }

  .all_hero .catch p {
    font-size: 13px;
  }

  .all_hero .pic {
    bottom: 8vh;
    right: 10px;
    width: 320px;
  }

  .all_hero .listbtn {
    width: 130px;
    position: absolute;
    bottom: -10px;
    right: 10px;
    z-index: 10;
  }
  .all_hero .listbtn.onfix {
    position: absolute;
  }

  .all_hero .slick-slide img {
    width: 100%;
    height: 65vh;
    object-fit: cover;
  }
}

/**------------------------------ 
about
 ------------------------------**/
.all_about {
  padding: 150px 0;
  overflow: hidden;
}

.about-list li {
  display: flex;
  padding: 0 8vw 0 var(--calc1000);
  margin: 0 auto 0;
  align-items: center;
  justify-content: center;
  line-height: 1.8;
  position: relative;
}
.about-list li:nth-child(even) {
  flex-flow: row-reverse;
  padding: 0 8vw 120px 40px;
  padding-right: var(--calc1000);
}

.about-list li figure {
  flex: none;
  position: relative;
}

.about-list li figure img {
  border-radius: 50%;
  position: relative;
}

.about-list li .text {
  width: 460px;
  margin-right: 60px;
  position: relative;
  z-index: 15;
}
.about-list li:nth-child(even) .text {
  margin-left: 60px;
  margin-right:0;
}

.about-list .circle01 img {
  width: 450px;
  height: 450px;
  z-index: 2;
}
.about-list li .circle01:before {
  content: "";
  width: 200px;
  height: 200px;
  background: var(--yell2);
  display: block;
  border-radius: 50%;
  position: absolute;
  top: -50px;
  left: -50px;
  z-index: 1;
}

.about-list .figure {
  position: relative;
  flex: none;
}

.about-list .circle02 img {
  width: 550px;
  height: 550px;
  z-index: 2;
}
.about-list .circle03 {
  position: absolute;
  bottom: -120px;
  right: -120px;
}
.about-list .circle03 img {
  width: 250px;
  height: 250px;
  z-index: 5;
}

.svg_t {
  width: 190px;
  position: absolute;
  left: -20px;
  top: -30px;
  z-index: -1;
}
.svg_a {
  width: 163px;
  position: absolute;
  right: 35vw;
  bottom: -30px;
  z-index: 5;
}
.svg_n {
  width: 116px;
  position: absolute;
  right: 0;
  bottom: -60px;
  z-index: 5;
}
.svg_p1 {
  width: 160px;
  position: absolute;
  left: 80px;
  bottom: -20px;
  z-index: 5;
}
.svg_o1 {
  width: 190px;
  position: absolute;
  left: 250px;
  bottom: -50px;
  z-index: 5;
}
.svg_p2 {
  width: 160px;
  position: absolute;
  right: 220px;
  bottom: -20px;
  z-index: -1;
}

.svg_o2 {
  width: 160px;
  position: absolute;
  right: 30px;
  bottom: 100px;
  z-index: -1;
}
.svg_k {
  width: 180px;
  position: absolute;
  left: 30px;
  bottom:-80px;
  z-index: -1;
}

.svg_i {
  width: 50px;
  position: absolute;
  right: 30px;
  bottom: -100px;
  z-index: -1;
}

@media screen and (max-width: 768px) {
  .all_about {
    padding: 40px 0 50px;
  }

  .about-list li {
    padding: 0 4%;
    flex-flow: column;
  }
  .about-list li:nth-child(even) {
    flex-flow: column;
    padding-right: 4%;
    padding: 0 4%;
  }

  .about-list li figure {
    flex: none;
  }

  .about-list li .text {
    width: 100%;
    margin-right: 0;
  }
  .about-list li:nth-child(even) .text {
    margin-left: 0;
    margin-top: 30px;
  }

  .about-list .circle01 {
    margin-top: 5px;
  }
  .about-list .circle01 img {
    width: 80vw;
    height: 80vw;
    z-index: 2;
  }
  .about-list li .circle01:before {
    width: 35vw;
    height: 35vw;
    top: -8px;
    left: auto;
    right: -10px;
  }

  .about-list .figure {
    position: relative;
    flex: none;
    width: 100%;
    text-align: right;
  }

  .about-list .circle02 img {
    width: 70vw;
    height: 70vw;
    z-index: 2;
  }
  .about-list .circle03 {
    position: absolute;
    bottom: auto;
    right: auto;
    top: 0px;
    left: 15px;
  }
  .about-list .circle03 img {
    width: 35vw;
    height: 35vw;
    z-index: 5;
  }

  .svg_t {
    width: 100px;
    position: absolute;
    left: auto;
    right: -20px;
    top: -20px;
    z-index: -1;
  }
  .svg_a {
    width: 80px;
    position: absolute;
    right: 75vw;
    bottom: 30px;
    z-index: 5;
  }
  .svg_n {
    width: 60px;
    position: absolute;
    right: 3vw;
    bottom: -15px;
    z-index: 5;
  }
  .svg_p1 {
    width: 80px;
    position: absolute;
    left: 63vw;
    top: 0;
    bottom: auto;
    z-index: -1;
  }
  .svg_o1 {
    width: 90px;
    position: absolute;
    left: 70vw;
    bottom: 60vw;
    z-index: -1;
  }
  .svg_p2 {
    width: 80px;
    position: absolute;
    right: 70vw;
    bottom: -20px;
    z-index: 5;
  }

  .svg_o2 {
    width: 80px;
    position: absolute;
    right: 30vw;
    bottom: -30px;
    z-index: 5;
  }
  
  .svg_k {
    width: 90px;
    left: 0;
    bottom:60vw;
  }
  
  .svg_i {
    width: 25px;
    right: 30px;
    bottom: 0;
  }

}

/**------------------------------ 
location
 ------------------------------**/
.all_location {
  padding: 100px var(--calc1000) 20px;
}

.in-list {
  margin: 80px auto;
}

.in-list li {
  counter-increment: li;
  margin: 0 0 30px;
}

.in-list figure img {
  border-radius: 10px;
}

.in-list h2 {
  color: var(--brown);
  font-weight: 800;
  font-size: 22px;
  display: flex;
  padding: 15px 0 5px;
}
.in-list h2:before {
  display: block;
  content: counter(li);
  color: var(--brown);
  background: var(--yell3);
  width: 1.5em;
  height: 1.5em;
  border-radius: 50px;
  text-align: center;
  line-height: 1.5em;
  font-size: 18px;
  margin: 0 15px 0 0;
  flex: none;
}

@media screen and (max-width: 768px) {
  .all_location {
    padding: 50px var(--calc1000) 20px;
  }

  .in-list {
    margin: 40px auto;
  }

  .in-list h2 {
    font-size: 14px;
  }
  .in-list h2:before {
    font-size: 14px;
    margin: 0 5px 0 0;
  }
  .in-list p {
    font-size: 14px;
  }
}

/**------------------------------ 
お問い合わせ
 ------------------------------**/
.aside {
  background: url(/common/images/top_img04.jpg) no-repeat center center / cover;
  padding: 50px 0 30px;
  text-align: center;
  color: #fff;
  position: relative;
}
.aside .pic {
  width: 450px;
  position: absolute;
  right: 20px;
  top: 20px;
}

.aside h2 {
  font-size: 28px;
  font-weight: 800;
  margin-bottom: 15px;
}
.aside a[href^="tel"] {
  font-size: 36px;
  font-weight: 800;
}
.aside .btnA {
  position: relative;
  z-index: 5;
}

@media screen and (max-width: 768px) {
  .aside {
    padding: 20px 5% 20px;
  }
  .aside h2 {
    font-size: 20px;
    margin-bottom: 10px;
  }

  .aside .pic {
    width: 200px;
    position: absolute;
    right: 10px;
    top: -20px;
    transform: rotate(15deg);
  }
  .aside .btnA {
    margin: 15px auto 0;
  }
}

/**------------------------------ 
数字で見る
 ------------------------------**/
.all-num {
  width: 1000px;
  margin: 80px auto;
  text-align: center;
}

.num-list {
  margin: 80px auto 30px;
}

.num-list li {
  margin-bottom: 50px;
}

@media screen and (max-width: 768px) {
  .all-num {
    width: 96%;
    margin: 40px auto 0;
    text-align: center;
  }

  .num-list {
    margin: 25px auto;
  }

  .num-list li {
    margin-bottom: 25px;
  }
}

/**------------------------------ 
採用一覧
 ------------------------------**/
.post-list {
  padding: 50px var(--calc1000) 20px;
}
.post-list2 {
  padding: 0 var(--calc1000) 20px;
}

.rec-list {
  margin: 40px auto 0;
}

.rec-list li {
  margin: 0 0 20px;
}

.rec-list figure {
  border-radius: 8px;
  overflow: hidden;
}
.rec-list figure img {
  border-radius: 8px;
}
.rec-list figure {
  margin: 10px 0;
}
.rec-list .titA {
  margin: 10px 0;
}

@media screen and (max-width: 768px) {
  .post-list {
    padding: 40px var(--calc1000) 20px;
  }
  .post-list2 {
    padding: 0 var(--calc1000) 20px;
  }

  .rec-list {
    margin: 40px auto;
  }

  .rec-list li {
    margin: 0 0 20px;
  }
}

/**------------------------------ 
リスト
 ------------------------------**/
.list time {
  font-size: 14px;
  display: inline-block;
  margin: 10px 10px 10px 0;
}
.list em {
  display: inline-block;
  font-size: 14px;
  background: var(--kon);
  color: var(--white);
  line-height: 1;
  padding: 8px 10px;
  margin: 5px 5px 5px 0;
}

/**================================================== 
------------------------------ 
採用 テンプレCSS
 採用詳細
------------------------------ 
================================================== **/
:root {
  --main: #333;
  --main2: #666;
  --main3: #ccc;
  --main4: #ddd;
}

.flx {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.w100vw {
  margin-left: calc((100% - 100vw) / 2);
  margin-right: calc((100% - 100vw) / 2);
}

.lh1 {
  line-height: 1;
}
.lh2 {
  line-height: 2;
}
.lh15 {
  line-height: 1.5;
}
.lh13 {
  line-height: 1.3;
}

.rec_titA {
  text-align: center;
  font-size: 1.875em;
  font-weight: 800;
  line-height: 1.53;
  color: var(--kon);
}

.btn_fl {
  display: flex;
  justify-content: center;
  margin: 15px auto 0;
}
.btn_fl a {
  width: 400px;
  margin: 15px;
}

@media screen and (max-width: 768px) {
  .rec_titA {
    font-size: 1.2em;
  }

  .btn_fl {
    flex-flow: column;
  }
  .btn_fl a {
    width: 100%;
    margin: 5px 0;
  }
}

/**------------------------------ 
採用HERO
 ------------------------------**/
.rec_hero {
  background: url(/common/images/title.jpg) no-repeat center center / cover;
  color: #fff;
  position: relative;
  padding: 150px 0;
  height: 600px;
}
.rec_hero .pic {
  width: 500px;
  position: absolute;
  right: 20px;
  top: 70px;
  z-index: 10;
}
 .rec_hero_inner{
     width: 100%;
     height: 420px;
    line-height: 1.7;
    display: flex;
    flex-flow: column;
    justify-content: flex-end;
    padding: 0 var(--over-width-half) 15px;
    letter-spacing: 1px;
    font-weight: 700;
    color: var(--white);
    text-shadow: 3px 3px 3px var(--black);
    font-size: 35px;
    z-index: 10;
    position:relative;
    transform: rotate(-5deg) translateY(30px);
}.rec_hero_inner h2{
    font-weight: 800;
}

@media screen and (max-width: 768px) {
  .rec_hero {
    padding: 60px 0 0;
    margin: 0 0;
    background-size: cover;
    background-position: top center;
    height: 65vw;
  }

.rec_hero_inner{
    height: 65vw;
    font-size: 18px;  
    padding:0 0 0 10px;
    transform: rotate(-5deg) translateY(0);
}

.rec_hero_inner p{
    margin:5px 0;
    width: 90%;
    line-height: 1.5;
}
  .rec_hero .pic {
    width: 200px;
    right: 0;
    top: 70px;
  }

}

/* -------------------------------------
概要
-------------------------------------*/
.rec-topics {
    padding: 30px var(--over-width-half);
    position: relative;
    background-color: var(--bg01);
    text-align: center;
}

.rec-topics > ul{
    background: var(--white);
    padding: 15px;
}

.rec-topics ul li div.i {
  display: flex;
  flex-wrap: wrap;
  margin: 15px auto;
  justify-content: center;
}

.rec-topics ul li div.i dl {
  margin-left: 15px;
}

.rec-topics ul li span {
  background-color: var(--red);
  color: var(--white);
  font-size: 20px;
  font-weight: 800;
  border-radius: 59% 41% 53% 47% / 42% 58% 42% 58%;
  display: block;
  width: 87px;
  height: 87px;
  min-width: 87px;
  min-height: 87px;
  line-height: 24px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-bottom: 10px;
}

.rec-topics ul li dl dt {
  font-size: 18px;
  font-weight: 800;
  color: var(--red);
}

.rec-topics ul li dl dd {
  font-size: 30px;
  font-weight: 800;
  color: var(--kon);
}

.rec-topics ul li strong {
  color: var(--kon);
  font-weight: 800;
  font-size: 40px;
  line-height: 1.5;
  display: inline-block;
}

.rec-topics ul li strong em {
  font-size: 22px;
}

.rec-topics ul li ul {
  display: inline-flex;
  flex-wrap: wrap;
}

.rec-topics ul li ul li {
  background: var(--kon);
  font-weight: 800;
  color: #fff;
  font-size: 18px;
  padding: 10px 15px;
  margin: 5px;
  border-radius: 5px;
  line-height: 1.2;
}

.rec-topics ul li p {
  line-height: 30px;
  width: 552px;
  margin: 20px 0 8px;
}

.rec-topics ul li b {
  display: inline-block;
  font-size: 16px;
  color: var(--kon);
  border: 1px solid var(--kon);
  line-height: 1;
  border-radius: 3px;
  padding: 8px 10px;
  vertical-align: middle;
  margin: 0 5px 0 0;
}


@media screen and (max-width: 768px) {
  .rec-topics {
    padding: 60px 5% 30px;
  }

  .rec-topics ul {
    display: block;
  }


  .rec-topics ul li div.i {
    flex-wrap: wrap;
  }

  .rec-topics ul li div.i dl {
    line-height: 30px;
    margin-left: 0px;
  }

  .rec-topics ul li span {
    font-size: 16px;
    width: 70px;
    height: 70px;
    min-width: 70px;
    min-height: 70px;
    line-height: 18px;
  }

  .rec-topics ul li dl dt {
    font-size: 16px;
  }

  .rec-topics ul li dl dd {
    font-size: 28px;
  }

  .rec-topics ul li strong {
    font-size: 20px;
    line-height: 1.75;
  }

  .rec-topics ul li ul li {
    font-size: 18px;
    padding: 10px 12px;
    margin: 3px;
    line-height: 18px;
  }

  .rec-topics ul li figure img {
    width: 100%;
  }

  .rec-topics ul li p {
    line-height: 1.6;
    width: 100%;
    margin: 10px 0;
  }

  .rec-topics ul li ul {
    margin: 3px -3px;
  }

  .rec-topics ul li strong em {
    font-size: 16px;
  }
}

/**------------------------------ 
募集とやりがい
 ------------------------------**/
.rec-hosoku {
  margin: 0 0 50px;
}

.rec-pr .obi {
  color: var(--white);
  background: var(--bg03);
  border-radius: 1px;
  font-size: 1.3em;
  line-height: 1.53;
  text-align: center;
  padding: 25px var(--calc980);
  font-weight: 800;
}

.rec-hosoku .yarigai,
.rec-pr .yarigai {
  background-position: center;
  background-repeat: repeat;
  padding: 40px 0;
}

.rec-hosoku .yarigai p,
.rec-pr p {
  max-width: 800px;
  width: 100%;
  line-height: 1.875;
}
.rec-hosoku .yarigai p{
  margin: 5px auto;
}
.rec-pr .obi + p{
  margin: 30px auto 50px;
}

.rec-hosoku .yarigai dl,
.rec-pr .yarigai dl {
  width: 800px;
  background: rgba(255, 255, 255, 1);
  margin: 0 auto;
}

.rec-hosoku .yarigai dl dt,
.rec-pr .yarigai dl dt {
  text-align: center;
  font-weight: 800;
  margin: 10px 0;
}

.rec-hosoku .yarigai dl dd,
.rec-pr .yarigai dl dd {
  line-height: 1.875;
}

.rec-hosoku .point{
  position: relative;
  padding: 20px var(--calc980);
  background: var(--bg02);
}

@media screen and (max-width: 768px) {
  .rec-hosoku {
    margin: 30px 0 30px;
  }

  .rec-pr p {
    width: 90%;
    line-height: 1.7;
  }

  .rec-pr .obi {
    font-size: 1.2em;
    padding: 20px 15px;
    text-align: left;
  }
  
  .rec-pr .obi + p{
    margin: 20px auto 30px;
  }

  .rec-hosoku .yarigai,
  .rec-pr .yarigai {
    padding: 10px 0;
  }

  .rec-hosoku .yarigai dl,
  .rec-pr .yarigai dl {
    width: 90%;
    padding: 5% 0;
  }

  .rec-pr .bg-blue {
    font-size: 18px;
    line-height: 1.53;
    text-align: center;
    padding: 12px 10px;
    font-weight: 800;
  }

  .rec-hosoku .yarigai dl dt,
  .rec-pr .yarigai dl dt {
    margin: 5px 0 10px;
    font-size: 18px;
  }

  .rec-hosoku .yarigai dl dd,
  .rec-pr .yarigai dl dd {
    line-height: 1.7;
  }
  .rec-pr .yarigai dl dd p {
    width: 100%;
  }
  .rec-pr  .yarigai p,
  .rec-hosoku .yarigai p{
    margin: 17px auto;
  } 
  
  .rec-hosoku .point {
    padding: 15px var(--calc980);
  }
}

/* -------------------------------------
業務内容
-------------------------------------*/
.rec-job {
  padding: 50px var(--calc980);
}

.rec-job ul li {
  margin: 40px -20px;
}

.rec-job ul .wrapper {
  display: flex;
}

.rec-job ul li:nth-child(even) .wrapper {
  flex-flow: row-reverse;
}

.rec-job ul .wrapper > * {
  margin: 20px;
  flex: 1;
}

.rec-job ul .wrapper figure {
  width: 410px;
  flex: none;
}

.rec-job ul .wrapper figure img {
  border-radius: 15px;
}

.rec-job ul .wrapper dt {
  display: flex;
  color: var(--yell);
  font-weight: 800;
  font-size: 2.125em;
  margin-top: -20px;
  opacity: 0.7;
}

.rec-job ul .wrapper dd {
  color: var(--kon);
  font-weight: 800;
  font-size: 1.8em;
  line-height: 1.63;
}

.rec-job ul .wrapper dd + dd {
  font-weight: normal;
  font-size: 1em;
  line-height: 1.875;
  margin-top: 10px;
  color: inherit;
}

.rec-job .point {
  position: relative;
  margin: 80px auto 0;
}

@media screen and (max-width: 768px) {
  .rec-job {
    padding: 30px var(--calc980);
  }
  .rec-job ul .wrapper {
    flex-direction: column;
    padding: 0 0;
  }

  .rec-job ul .wrapper img {
    width: 100%;
  }

  .rec-job ul li:nth-child(even) .wrapper {
    flex-flow: column;
  }

  /*.rec-job .no1 figure{
		order: 1;
	}
	.rec-job .no1 dl{
		order: 2;
	}
	.rec-job .no2 figure{
		order: 3;
	}
	.rec-job .no2 dl{
		order: 4;
	}
	.rec-job .no3 figure{
		order: 5;
	}
	.rec-job .no3 dl{
		order: 6;
	}
	.rec-job .no4 figure{
		order: 7;
	}
	.rec-job .no4 dl{
		order: 8;
	}*/
  .rec-job ul .wrapper figure {
    width: 90%;
    flex: none;
  }

  .rec-job ul li {
    margin: 0px -20px 40px;
  }

  .rec-job ul .wrapper dt {
    margin-top: -60px;
    font-size: 38px;
    margin-bottom: -5px;
    mix-blend-mode: multiply;
  }

  .rec-job ul .wrapper dd {
    font-size: 18px;
  }

  .rec-job ul .wrapper dd + dd {
    margin-top: 5px;
    line-height: 1.7;
  }
  
  .rec-job .point {
    margin: 30px auto 0;
  }
}

/**------------------------------ 
先輩インタビュー
 ------------------------------**/
.rec-interview {
  padding: 60px 0 30px;
  position: relative;
}

.rec-interview .interview {
  margin: 40px 0 100px;
}

.rec-interview .interview ol {
  display: flex;
}

.rec-interview .interview ol li.left {
  margin-left: calc((100% - 735px) / 2);
  margin-right: 320px;
  position: relative;
  min-height: 150px;
}

.rec-interview .interview ol li.left dl {
  position: absolute;
  bottom: -20px;
  background-color: #fff;
  width: 400px;
  z-index: 50;
}

.rec-interview .interview ol li.left dl dt {
  background-color: var(--main);
  color: #fff;
  font-weight: 800;
  padding: 15px 20px;
  line-height: 1.5;
}

.rec-interview .interview ol li.left dl dd {
  box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, 0.2);
  padding: 20px 20px;
  color: var(--main);
}

.rec-interview .interview ol li.left dl dd span {
  font-weight: 800;
  display: block;
  font-size: 2em;
  margin: 30px 0 0px;
  color: var(--kon);
}

.rec-interview .interview ol li.left dl dd span em {
  font-weight: normal;
  font-size: 14px;
  margin-left: 10px;
}

.rec-interview .interview ol li.right {
  width: 100%;
  z-index: 30;
}

.rec-interview .interview ol li.right dl {
  position: relative;
  min-height: 280px;
}

.rec-interview .interview ol li.right dl dd {
  background-position: left 110px bottom;
  background-repeat: no-repeat;
  background-size: contain;
  height: 366px;
  width: 100%;
  position: relative;
}

.rec-interview .interview ol li.right dl dt {
  background: var(--bg02);
  height: 276px;
  position: absolute;
  bottom: 0;
  width: 100%;
}

.rec-interview ul li {
  margin: 50px auto;
  display: flex;
}

.rec-interview ul li figure {
  width: 410px;
  flex: none;
}
.rec-interview ul li figure img {
  border-radius: 15px;
}

.rec-interview ul li dl {
  margin-left: 35px;
}

.rec-interview ul li dl dt {
  color: var(--kon);
  font-size: 1.375em;
  font-weight: 800;
  margin-bottom: 12px;
  line-height: 1.36;
}

.rec-interview ul li dl dd {
  line-height: 1.875;
}

.rec-interview .message {
  display: flex;
  margin: 75px auto 30px;
  position: relative;
  position: relative;
  min-height: 460px;
  align-items: flex-start;
}

.rec-interview .message figure {
  position: absolute;
  top: 0;
  right: -20vw;
  width: 980px;
  height: 460px;
  overflow: hidden;
  background: var(--bg01);
}

.rec-interview .message figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.rec-interview .message dl {
  position: relative;
  top: 40px;
  background-color: white;
  width: 430px;
  padding: 30px 35px;
  box-shadow: 0 0 4px 1px rgba(0, 0, 0, 0.1);
  border-radius: 5px;
}

.rec-interview .message dt {
  font-size: 1.375em;
  color: var(--kon);
  font-weight: 800;
  line-height: 1.36;
  margin-bottom: 20px;
}

.rec-interview .message dd {
  line-height: 1.875;
}

@media screen and (max-width: 768px) {
  .rec-interview {
    padding: 30px 0 0;
  }
  .rec-interview ul {
    padding: 0;
  }

  .rec-interview ul li {
    display: block;
    margin: 20px auto;
  }

  .rec-interview ul li figure {
    width: 100%;
    flex: none;
  }

  .rec-interview ul li img {
    width: 100%;
  }

  .rec-interview ul li dl {
    margin-left: 0px;
  }

  .rec-interview ul li dl dt {
    margin-bottom: 5px;
    margin-top: 10px;
    font-size: 18px;
  }

  .rec-interview .interview ol {
    flex-direction: column;
  }

  .rec-interview .interview ol li.left dl {
    width: 90%;
    z-index: 50;
    position: relative;
    margin: 0 5% 0;
    bottom:30px;
  }

  .rec-interview .interview ol li.left {
    margin-left: 0;
    margin-right: 0;
    position: static;
    order: 2;
    z-index: 50;
    min-height: auto;
  }
  
  .rec-interview .interview ol li.right dl{
    min-height: 220px;
  }

  .rec-interview .interview ol li.right dl dt {
    height: 186px;
    bottom: 20px;
  }

  .rec-interview .interview ol li.right dl dd {
    background-position: right bottom;
    height: 240px;
    width: 90%;
    margin-left: auto;
  }

  .rec-interview .memories ol {
    flex-direction: column;
    margin: 37px auto 55px;
  }

  .rec-interview .memories ol li.left {
    margin-left: 0;
    margin-right: 0px;
    order: 2;
  }

  .rec-interview .memories ol li.right {
    background-position: center;
    background-size: contain;
    height: 59vw;
    width: 100%;
  }

  .rec-interview .memories ol li.left dl {
    position: static;
    width: 90%;
    padding: 15px 17px;
    margin: -20px 5% 0;
  }

  .rec-interview ul li dl dd {
    line-height: 1.7;
  }

  .rec-interview .interview ol li.left dl dd span {
    margin: 15px 0 0px;
    font-size: 20px;
  }

  .rec-interview .memories ol li.left dl dt {
    font-size: 18px;
    margin-bottom: 10px;
  }

  .rec-interview .memories ol li.left dl dd {
    line-height: 1.7;
  }

  .rec-interview .interview {
    margin: 10px 0;
  }

  .rec-interview .interview ol li.left dl dt {
    padding: 7px 20px;
  }

  .rec-interview .interview ol li.left dl dd {
    padding: 10px 20px;
  }

  .rec-interview ul li dl:last-child dt {
    font-size: 18px;
  }

  .rec-interview .message {
    display: block;
    min-height: auto;
    margin: 30px auto 0;
  }

  .rec-interview .message figure {
    position: static;
    width: 100%;
    height: auto;
  }
  .rec-interview .message figure img {
    position: static;
    transform: none;
  }

  .rec-interview .message dl {
    width: 90%;
    padding: 20px 20px 15px;
    top: -40px;
  }

  .rec-interview .message dt {
    margin-bottom: 10px;
    font-size: 1.2em;
  }
}

/**------------------------------ 
1日のスケジュール
 ------------------------------**/
.rec-schedule {
  padding: 1px 0 1px;
  background: var(--bg02);
}

.rec-schedule .schedule {
  padding: 40px 40px;
  background: var(--yell4);
  background: url(/common/images/bg07.png);
  border-radius: 20px;
}

.rec-schedule .schedule ul {
  display: flex;
  justify-content: space-between;
  margin: 50px auto 0px;
}

.rec-schedule .schedule ul li {
  flex:1;
}

.rec-schedule .schedule ul li + li {
  width: 350px;
  flex: none;
  margin-left: 40px;
  display: flex;
  flex-direction: column;
}

.rec-schedule .schedule ul li dl {
  background-color: white;
  display: flex;
  position: relative;
  align-items: center;
  flex-wrap: wrap;
  padding: 10.5px 20px;
  font-size: 1.125em;
  line-height: 1.66;
}

.rec-schedule .schedule ul li dl::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -22px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);

  background-image: url(/common/images/img13.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 26px;
  height: 13px;
}

.rec-schedule .schedule ul li dl + dl {
  margin-top: 20px;
}

.rec-schedule .schedule ul li dl:last-child::after {
  content: none;
}

.rec-schedule .schedule ul li dl dt {
  color: var(--kon);
  font-size: 14px;
  flex: none;
  letter-spacing: 1px;
  margin: 0 15px 0 0;
}
.rec-schedule .schedule ul li dl dd {
  font-weight: 800;
  color: var(--kon);
}

.rec-schedule .schedule ul li dl dd + dd {
  font-size: 14px;
  font-weight: normal;
  width: 100%;
  color: inherit;
}

.rec-schedule .careerpath {
  margin-top: 30px;
  padding: 50px;
}

.rec-schedule .careerpath ul {
  width: 400px;
  margin: 0 auto;
  text-align: center;
}

.rec-schedule .careerpath ul li {
  background-color: var(--bg02);
  color: #fff;
  font-size: 1.5em;
  font-weight: 800;
  padding: 10px;
}

.rec-schedule .careerpath ul li + li {
  background-color: #fff;
  color: #464646;
  padding: 20px;
  font-size: 1em;
  font-weight: normal;
  box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, 0.2);
}

.rec-schedule .careerpath ul li + li dl {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.rec-schedule .careerpath ul li + li dl:first-child::before {
  position: absolute;
  left: 50%;
  top: 0;
  content: "";
  width: 10px;
  height: 25px;
  background-color: white;
  z-index: 15;
  -webkit-transform: translateX(-120%);
  transform: translateX(-120%);
}

.rec-schedule .careerpath ul li + li dl:last-child::after {
  position: absolute;
  left: 50%;
  bottom: 0;
  content: "";
  width: 10px;
  height: 25px;
  background-color: white;
  z-index: 15;
  -webkit-transform: translateX(-120%);
  transform: translateX(-120%);
}

.rec-schedule .careerpath ul li + li dl dt {
  color: #926900;
  font-weight: 800;
  border-right: 2px solid #d0a03b;
  position: relative;
  /*	margin: 0 20px 0 0;*/
  padding: 5px 42.5px 5px 0px;
}

.rec-schedule .careerpath ul li + li dl dt:first-letter {
  font-size: 1.875em;
}

.rec-schedule .careerpath ul li + li dl dt::after {
  content: "●";
  color: #d0a03b;
  position: absolute;
  left: 95px;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 20;
}

.rec-schedule .careerpath ul li + li dl dd {
  padding: 5px 0px 5px 42.5px;
}

.rec-schedule .careerpath ul li + li dl dt span {
  font-size: 1.875em;
}

.rec-schedule .naibu-list {
  margin: 80px auto 100px;
}
.rec-hosoku .naibu-list {
  margin: 60px auto;
}
.rec-schedule .naibu-list h3,
.rec-hosoku .naibu-list h3 {
  font-weight: 800;
  font-size: 1.1em;
  margin: 15px 0 10px;
}
.rec-hosoku .naibu-list p {
  margin: 5px 0;
}

.rec-schedule .schedule ul li + li figure{
  margin-bottom: 5px;
}

@media screen and (max-width: 768px) {
  .rec-schedule{
    padding:0 0 30px;
  }
  .rec-schedule .schedule ul {
    display: block;
    margin: 25px auto 0px;
  }

  .rec-schedule .schedule ul li {
    width: 100%;
  }

  .rec-schedule .schedule ul li figure {
    margin: 5px auto;
  }

  .rec-schedule .schedule ul li + li {
    width: 100%;
    margin:15px 0 0;
  }

  .rec-schedule .schedule ul li img {
    width: 100%;
  }

  .rec-schedule .schedule {
    padding: 20px 5% 20px;
  }

  .rec-schedule .careerpath {
    padding: 25px 5%;
  }

  .rec-schedule .careerpath ul {
    width: 100%;
  }

  .rec-schedule .schedule ul li dl {
    padding: 6px 15px;
    font-size: 16px;
  }

  .rec-schedule .careerpath ul li + li dl dt {
    padding: 5px 45.5px 5px 0px;
  }

  .rec-schedule .careerpath ul li + li dl dd {
    padding: 5px 0px 5px 45.5px;
  }

  .rec-schedule .naibu-list {
    margin: 40px auto;
  }
  .rec-hosoku .naibu-list {
    margin: 50px auto;
  }
  .rec-schedule .naibu-list li,
  .rec-hosoku .naibu-list li {
    margin-bottom: 30px;
  }
  .rec-schedule .naibu-list figure {
    margin-bottom: 15px;
  }
}

/**------------------------------ 
福利厚生
 ------------------------------**/
.rec-fukuri {
  padding: 30px 5% 27px;
}

.rec-fukuri ul {
  width: 980px;
  margin: 20px auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.rec-fukuri ul li {
  width: 460px;
}

.rec-fukuri ul li + li + li {
  margin-top: 40px;
}

.rec-fukuri ul li dl {
  width: 400px;
  margin: -28px auto 0px;
  position: relative;
  box-shadow: 0px 0px 4px 1px rgba(0, 0, 0, 0.1);
}

.rec-fukuri ul li dt {
  background-color: var(--kon);
  color: var(--white);
  font-weight: 800;
  font-size: 1.125em;
  padding: 15px 20px 10px;
}

.rec-fukuri ul li dd {
  background-color: #fff;
  padding: 15px 20px;
  font-size: 0.875em;
  line-height: 2;
}

@media screen and (max-width: 768px) {
  .rec-fukuri {
    padding: 20px 5% 13px;
  }

  .rec-fukuri ul {
    width: 100%;
    margin: 30px auto;
  }

  .rec-fukuri ul li,
  .rec-fukuri ul li img {
    width: 100%;
  }

  .rec-fukuri ul li dl {
    width: 90%;
  }

  .rec-fukuri ul li + li {
    margin-top: 30px;
  }

  .rec-fukuri ul li + li + li {
    margin-top: 30px;
  }

  .rec-fukuri ul li dd {
    line-height: 1.7;
  }
}

/**------------------------------ 
代表メッセージ
 ------------------------------**/
.rec-ceo {
  background: var(--bg02);
  padding: 0 0 20px;
  margin: 100px auto 50px;
  justify-content: center;
  position: relative;
}
.rec-ceo figure {
  position: relative;
  margin: -40px 60px 0 0;
  max-width: 400px;
}
.rec-ceo img {
  display: block;
  box-shadow: 10px 10px 0 0 var(--bg01);
}

.rec-ceo .text {
  padding: 50px 0;
}

.rec-ceo h3 {
  font-size: 26px;
  color: var(--kon);
  font-weight: 800;
}

.rec-ceo .text p + p {
  margin: 1em 0 0;
}

@media screen and (max-width: 768px) {
  .rec-ceo {
    padding: 20px;
    margin: 50px auto 0;
  }
  .rec-ceo figure {
    width: 85% !important;
    margin: -40px auto 20px;
  }
  .rec-ceo img {
    display: block;
  }
  .rec-ceo h3 {
    font-size: 18px;
  }
  .rec-ceo .text {
    padding: 20px 0;
  }
}

/**------------------------------ 
募集要項
------------------------------**/
.rec-outline {
  padding: 60px var(--calc980) 95px;
}

.rec-outline dl {
  margin: 30px auto;
  display: flex;
  flex-wrap: wrap;
  border: 1px solid var(--brown);
  line-height: 1.75;
  border-radius: 0px;
  overflow: hidden;
}

.rec-outline dl dt:first-of-type,
.rec-outline dl dd:first-of-type {
  border-top: none;
}

.rec-outline dl dt {
  width: 25%;
  background-color: var(--main4);
  background: var(--bg02);
  color: var(--kon);
  font-weight: 800;
  padding: 18px 25px 16px;
  border-top: 1px solid var(--kon);
  border-right: 1px solid var(--kon);
}

.rec-outline dl dd {
  flex: 70%;
  padding: 16px 25px;
  border-top: 1px solid var(--brown);
}

@media screen and (max-width: 768px) {
  .rec-outline {
    padding: 0px 5% 50px;
  }

  .rec-outline dl {
    width: 100%;
    display: block;
  }

  .rec-outline dl dt {
    width: 100%;
    padding: 8px 10px;
    border-right: none;
  }
  .rec-outline dl dd:first-of-type {
    border-top: 1px solid var(--brown);
  }

  .rec-outline dl dd {
    width: 100%;
    padding: 8px 10px;
  }
}


.rec-table {
  padding: 10px var(--calc980);
}

.atach{
    width: 100%;
    background-position: center center;
    background-attachment: fixed;
    background-size: cover;
    background-repeat: no-repeat;
}

/**------------------------------ 
フォーム
------------------------------**/

.require {
    top: 0;
    right: 0.5em;
    bottom: 0;
    margin: auto 5px;
    position: absolute;
    display: inline-block;
    width: 5em;
    height: 2em;
    border-radius: 3px;
    background: #c00;
    color: #fff;
    text-align: center;
    font-weight: bold;
    font-size: 11px;
    line-height: 2em;
}

.owlet-input-sample{
  opacity: 0.8;
  margin: 8px 0;
}


/*iphoneでのリセット*/
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
/*ここまで*/

/**フォーム**/
.owlet-form {
    padding: 0;
}
.owlet-form table{
    margin: 0 auto 20px;
    width: 100%;
    border-collapse: separate;
    border-spacing: 1px;
    border-top: 1px solid var(--kon);
}

.owlet-form table tr th,
.owlet-form table tr td{
    padding: 20px;
    text-align: left;
    background: #fff;
    border-bottom: 1px solid var(--kon);
}
.owlet-form table tr th{
    width: 30%;
    padding-right: 4.5em;
    font-weight: bold;
    line-height: 1.8;
    background: #fff;
    color:var(--kon);
    position: relative;
}
.owlet-form table tr:first-child th,
.owlet-form table tr:first-child td {
    border-top: none;
}

/*必須項目
.require{
    width: 50px;
    display: inline-block;
    margin: auto 5px;
    font-size: 0.9em;
    color: #fff;
    font-weight: bold;
    text-align: center;
    line-height: 30px;
    background: #e05e5f;
    border-radius: 4px;
    position: absolute;
    top: 50%;
    right: 10px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}*/
/*例文*/
.owlet-input-sample{
    font-size: 16px;
    padding: 0 10px;
}

/*各項目入力部分*/
.owlet-form input[type="image"] {
  text-align: center;
  display: block;
  margin: 0 auto;
}

.owlet-form table input,
.owlet-form table select,
.owlet-form table textarea,
.owlet-form table label,
.owlet-form table .input_address{
    font-size:16px;
    height: auto;
}
.owlet-form input.owlet-input-tel1 + span,
.owlet-form input.owlet-input-tel2 + span{
    font-size:16px;
}

/**入力画面&確認画面共通**/
.form_button {
  width: 100%;
  margin: 40px auto;
  text-align: center;
  font-size: 1.1rem;
  border-radius: 3px;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align: flex-start;
  -ms-flex-align: flex-start;
  align-items: flex-start;
  -webkit-box-pack: space-around;
  -ms-flex-pack: space-around;
  justify-content: space-around;
}
.form_button a:hover,
.form_button input:hover {
  opacity: 0.8;
}

/**入力画面**/
.form_button input[type="button"],
.form_button input[type="submit"],
.form_button input[type="image"],
.form_button a{
  display: block;
  cursor: pointer;
  margin: 15px;
}
.form_button input[type="button"],
.form_button input[type="submit"] {
  /*画像ボタンがないとき ※画像ボタンにする場合は固定画像を使います*/
    width: 300px;
    padding: 10px 30px;
    border-radius: 0px;
    font-size: 1.2em;
    font-weight: bold;
    border: none;
    background-color: var(--kon);
    border: 1px solid var(--kon);
    color: var(--white);
    cursor: pointer;
    border-radius: 50px;
    position: relative;
}
.form_button input[type="button"]:hover,
.form_button input[type="submit"]:hover {
  /*画像ボタンがないとき*/
  cursor: pointer;
  box-sizing: border-box;
  transition: all .4s;
  background-color: #fff;
  color:var(--kon);
}

/**確認画面**/
.form_button a {
    width: 300px;
    height: auto;
    padding: 8px 30px;
    border-radius: 0px;
    font-size: 1.1em;
    font-weight: normal;
    border: none;
    border: 1px solid var(--brown);
    color: var(--brown);
    cursor: pointer;
    border-radius: 50px;
    position: relative;
    margin: 50px auto 15px;
    min-width: auto;
}

.alert{
    color:#CE0000;
}
.owlet-rules-agree .alert{
    margin-top:10px;
}

.-w-inquiry_form input[type="text"]{
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
}
.-w-inquiry_form input.owlet-input-name-sei[type="text"],
.-w-inquiry_form input.owlet-input-name-mei[type="text"]{
    width: 280px;
    box-sizing: border-box;
    padding: 10px;
    margin: 0 10px 0 0;
}
/*
フォーム input
アーティクル設定に合わせてください。
***************************/
.-w-inquiry_form input[type="text"],
.-w-inquiry_form select {
  min-height: 30px;
  box-sizing: border-box;
  border: 1px solid ;
}

.-w-inquiry_form input.owlet-input-tel1[type="text"],
.-w-inquiry_form input.owlet-input-tel2[type="text"],
.-w-inquiry_form input.owlet-input-tel3[type="text"],
.-w-inquiry_form input.zip1[type="text"],
.-w-inquiry_form input.zip2[type="text"]{
  line-height: 1.2;
    padding: 10px;
    border: 1px solid #dcdcdc;
    width: 115px;
}
input[type="text"] {
    line-height: 1.2;
    padding: 10px !important;
    border: 1px solid #dcdcdc !important;
}

.owlet-form textarea {
  min-height: 150px;
  line-height: 1.2;
  padding: 10px;
    border: 1px solid #dcdcdc;
  width: 100%;
  box-sizing: border-box;
}
.owlet-form select {
  line-height: 1.2;
    border: 1px solid #dcdcdc;
  width: 180px;
}

/*名前*/
.owlet-input-name-sei,
.owlet-input-name-mei {
  width: 90px;
  margin: 0 5px;
}

/*メールアドレス*/
.owlet-form input[name="input[kibou]"],
.owlet-form input[name="input[email]"],
.owlet-form input[name="input[email_confirm]"] {
  width: 100%;
}

.owlet-form  input[name="input[url]"]{
  width: 100%;
}

.owlet-form  input[name="input[add_address]"]{
  width: 80%;
}

/*住所*/
.zip1,
.zip2 {
  width: 60px;
  margin-bottom: 10px;
}
.zip2addr {
  margin-bottom: 10px;
    padding: 10px 13px 6px;
    box-sizing: border-box;
    display: inline-block;
}
select.prefectures,
select.city {
  margin: 0 5px 10px 0;
  padding: 10px;
}
.owlet-form .address,
.owlet-form input[name="input[address_address]"],
.owlet-form input[name="input[address_address2]"],
.owlet-form input[name="input[address2_address]"],
.owlet-form input[name="input[address2_address2]"] {
  width: 100%;
  margin-left: 0;
}
.address,
input[name="input[address_address]"] {
  margin: 0 5px 5px;
  width: 75%;
}
input[email],
input[email_confirm],
input[body]{
  margin: 0 5px 5px;
  width: 75%; 
}

/*日時*/
.owl-datepicker {
  width: 150px;
  margin-right: 5px;
}
select[name="input[date_hour]"],
select[name="input[date_minute]"] {
  margin-right: 5px;
}

/*電話番号*/
.owlet-input-tel1,
.owlet-input-tel2,
.owlet-input-tel3 {
  width: 60px;
}
.owlet-input-tel2,
.owlet-input-tel3 {
  margin-left: 5px;
}

/*一行*/
input[name="input[company_name]"] {
  width: 80%;
  line-height: 1.2;
  padding: 2px;
}

/*複数行*/
textarea[name="input[text]"] {
  width: 80%;
}

/*ラジオ・チェックボックス縦並びにする場合*/
.owlet-form table tr td label {
  margin-right: 1em;
}

/*その他*/
input[name="input[select_etc]"],
input[name="input[radio_etc]"],
input[name="input[check_etc]"] {
  width: 80%;
  margin-top: 5px;
}

/*ラジオボタンにスタイルあてる場合*/
.owlet-form label input[type="radio"] {}

/*チェックボックスにスタイルあてる場合*/
.owlet-form label input[type="check"] {}

/*
フォーム 規約
**************************************/
.owlet-rules {
    padding: 0 0 50px;
}
.owlet-rules strong{
}
.owlet-rules-title {
  font-size:16px;
  font-weight: bold;
  margin-bottom: 10px;
  margin-top: 30px;
  color: var(--brown);
  text-align: center;
}
.owlet-rules-body {
  height: 200px;
  padding: 15px;
  border: 1px solid;
  box-sizing: border-box;
  margin-bottom: 20px;
  overflow-y: scroll;
  border: 1px solid #dcdcdc;
}
.owlet-rules-agree {
  text-align: center;
  margin-bottom: 20px;
  position: relative;
}
.owlet-rules-agree a{
  font-size:16px;
    margin-bottom: 10px;
    display: inline-block;
    color:;
}

@media screen and (max-width: 1280px) {
    /*フォーム*/
.owlet-form input.owlet-input-name-sei[type="text"],
.owlet-form input.owlet-input-name-mei[type="text"]{
    width: 100%;
}
.owlet-form input.owlet-input-name-sei[type="text"]{
    margin-bottom: 10px;
}
input.owlet-input-name-sei[type="text"],
input.owlet-input-name-mei[type="text"]{
    width: 100%;
}
input.owlet-input-name-sei[type="text"]{
    margin-bottom: 10px;
}

.owlet-rules {
    width:100%;
}
    
}

@media screen and (max-width: 768px) {
    .lp_form{
    padding:2.0rem ;
}
.lp_form .lp_form-wrapper {
    padding:0;
}
.form-wrapper{
    width:100%;
    margin: 0 auto;
    padding:0 2rem;
    box-sizing: border-box;
}
.form_button {
    width: 100%;
    margin: 0 auto 30px;
    font-size: 1.250rem;
}

/*フォーム*/
.owlet-rules-agree {
    margin-top: 20px;
    font-size: 3vw;
}
table {
    display: block;
    width: 100%;
    box-sizing: border-box;
}
table tbody,
table tr {
    display: block;
    width: 100%;
}
.owlet-form table tr th{
  border-top: none;
}
.owlet-form table tr th,
.owlet-form table tr td {
    display: block;
    width: 100%;
    min-height:auto;
    box-sizing: border-box;
    padding: 10px 2%;
    border-bottom: 1px solid var(--brown);
    text-align:left;
}
.owlet-form table tr td {
    border-bottom: 1px solid var(--brown);
    padding-bottom: 1em;
}
.owlet-form table tr th {
    padding-top: 1em;
}
.form_button a {
    display: inline-block;
    float: none;
    vertical-align: top;
    height: auto;
    width: 90vw;
}
.form_button form {
    display: inline-block;
    float: none;
    vertical-align: top;
    margin: 0 auto 15px;
}
.-w-inquiry_form input.owlet-input-name-sei[type="text"],
.-w-inquiry_form input.owlet-input-name-mei[type="text"]{
    width: 100%;
    padding: 10px;
    margin: 0;
} 
.-w-inquiry_form input.owlet-input-name-sei[type="text"]{
    margin: 0 0 10px;
}
input.owlet-input-name-sei[type="text"],
input.owlet-input-name-mei[type="text"]{
    width: 100%;
    padding: 10px;
    margin: 0;
} 
input.owlet-input-name-sei[type="text"]{
    margin: 0 0 10px;
}

.owlet-form  input[name="input[add_address]"]{
  width: 100%;
}

table tr td input,
table tr td select {
    box-sizing: border-box;
}
table tr td input[type="text"] {
    min-height: 30px;
}
textarea {
    width: 100%;
    display: block;
    margin: 0 auto;
}
.owlet-form input.owlet-input-name-sei[type="text"],
.owlet-form input.owlet-input-name-mei[type="text"]{
    width: 100%;
    padding: 10px;
    margin: 0;
} 
.owlet-form input.owlet-input-name-sei[type="text"]{
    margin: 0 0 10px;
}
.-w-inquiry_form input.owlet-input-tel1[type="text"],
.-w-inquiry_form input.owlet-input-tel2[type="text"],
.-w-inquiry_form input.owlet-input-tel3[type="text"]{
    width: 90px;
}
.owlet-form table tr td input,
.owlet-form table tr td select {
    max-width: 100%;
    box-sizing: border-box;
}
.owlet-form table tr td input[type="text"] {
    min-height: 30px;
}
.owlet-form textarea {
    width: 100%;
    padding: 0;
    display: block;
    margin: 0 auto;
}
.owlet-rules{
    padding:0;
    margin:0 auto;
}
a,
input[type="button"],
.form_button input[type="submit"],
input[type="text"],
input[type="button"],
select{
-webkit-appearance: none;
-webkit-border-radius: 0;
 border-radius: 0;
}

.form_button input[type="button"],
.form_button input[type="submit"] {
  width: 90vw;
  min-width: auto;
  margin: 0;
  height: 60px;
  font-size: 1.1em;
}
.owlet-form table tr td {
    border-top: none;
    border-bottom: 1px solid var(--brown);
}
}
