#header h1 { display:block; position: relative; z-index: 99999;}
#header h1 a {
	display: block;
	width:150px; height:80px;
	text-indent: -9999px;
	background:url("../img/logo2.svg") no-repeat 15px center;
	background-size:90% auto;
}
#content { position: relative; background: #fff;}
#content canvas { 
	position: absolute; top:200px; left:-60%; right:-50%;
	margin: auto; width:120%;
	transform: rotate(-11deg);
    z-index:2;  overflow: hidden !important;
}
#content::before {
	display: block; content:""; clear: both;
	margin: auto; width:120%; height:500px;
	position: absolute; top:-200px; left:-60%; right:-50%;
	transform: rotate(-11deg);
	background: #fff;
	z-index:1;
    animation: bgchange 15s ease infinite;
}
#subpage { 
    position: relative; z-index: 9999;
    background-image:
        url("../img/sb_bg1.png"),
        url("../img/sb_bg2.png"),
        url("../img/sb_bg3.png"),
        url("../img/sb_bg4.png"),
        url("../img/sb_bg5.png");
    background-repeat:
        no-repeat,
        no-repeat,
        no-repeat,
        no-repeat,
        no-repeat;
    background-position: 
        center 0%,
        center 600px,
        center 900px,
        center 1610px,
        center 2350px;
}
#subpage .cont { margin:0 auto; padding:120px 0; width: 90%; max-width:1000px; overflow: hidden;}
#subpage .bg_b { background: #f9fcfd; /* animation: bgchange 15s ease infinite; */}
#subpage .bg_w { background: #fff;}
#pan {
	margin:0 auto;
	padding:20px 0;
	width: 90%;
	max-width:1000px;
	border-top:1px solid #ccc;
}
#pan a { color:#000;}


/*--------------------------------------------------------
  SUB ITEM
--------------------------------------------------------*/


/* TITLE */
#content .sb_tit {	position: relative; text-align: center; font-weight: 600; z-index: 9;}
#content h2.sb_tit { padding:170px 0 45px; }
#content h3.sb_tit { margin: 45px 0; padding:45px 0 45px; }
#content .sb_tit::after {
	display: block; clear: both; content:"";
	position: absolute; left:0; right: 0; bottom:0;
	margin: auto; width:130px; height:10px;
	background: url("../img/title_line.svg") no-repeat;
}
#content .sb_tit .en {	font-family:'Barlow', sans-serif; font-size: 175%; font-weight:500;}
#content .sb_tit .ja { font-size:150%;	line-height:120%; letter-spacing: 2px;}
#content h3.mid {
    position: relative; margin: 0 0 60px; padding: 0 0 40px;
    text-align: center; font-weight: 600; line-height:250%; z-index: 9;
}
#content h3.mid b { background: url("../img/mid_bg.gif") repeat-x center 90%;}
#content h3.mid .en { font-family:'Barlow', sans-serif; font-size: 175%; font-weight:600;}
#content h3.mid .ja { font-size:150%; line-height:120%; letter-spacing: 2px;}
#content h3.mid::after {
	display: block; clear: both; content:"";
	position: absolute; left:0; right: 0; bottom:0;
	margin: auto; width:130px; height:2px;
	background:#444;
}
#content .cate { 
    position: relative;
    margin:100px auto 50px; padding:0; width: 90%; max-width: 830px;
    font-size:125%; font-weight:600;line-height:120%;
    letter-spacing: 2px;
}
#content .cate::before {
	display: block; clear: both; content:"";
	position: absolute; left:-90px; bottom:0; top: 0;
    margin:auto; width: 75px; height: 2px; background: #000;
}


/* KAIGYOU */
#subpage p.indention {
	clear:both;
	margin: 0 2%;
	height:40px;
	text-indent: -9999px;
	background:none;
}


/* CATCH COPY */
#subpage .catch {
	clear:both;
	margin:20px 2% 40px;
	font-family:  "Yu Gothic", YuGothic, "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
	font-size:150%;
    font-weight:600;
	line-height:120%;
    letter-spacing: 2px;    
    text-align: center;
}
#subpage .indention + .catch { margin-top: 45px;}


/* COMMENT */
#subpage .comment1 {
	clear:both;
	margin:0 2% 20px;
    font-size:105%;
}
#subpage .comment2 {
	clear:both;
	margin:0 2% 20px;
	padding: 3%;
    font-size:105%;
	background: #f6f6f6;
}
#subpage .comment3 {
	clear:both;
	margin:0 2% 20px;
	padding: 3%;
	color:#FF0004;
    font-size:105%;
	background:rgba(255,0,4,0.05);
}
#subpage .notes { margin-top: 30px; padding-left:20px; text-indent: -20px; font-size:14px; line-height: 150%; }
#subpage .notes::before { content:"※";}
#subpage .notes + .notes { margin-top:5px; }


/* HYOU */
#subpage table.item_table {
	clear:both;
	margin:10px 2%;
	width:96%;
	border-collapse:collapse;
	border-top:1px solid #ddd;
}
#subpage table.item_table th,
#subpage table.item_table td { position: relative; padding: 10px ;  font-size:105%; border-bottom: 1px solid #ddd;}
#subpage table.item_table th { text-align: center; vertical-align: top;}
#subpage table.item_table th td p+p { margin-top: 10px;}


/* LIST */
#subpage ul.list-ul {
	clear:both;
	margin:0 2%;
	padding: 0 0 5px 20px;
}
#subpage ul.list-ul li { list-style: disc;  font-size:105%;}


/* LINK */
#subpage .link {
    position: relative;
	clear:both;
	margin:0 2%;
	padding: 0 0 10px;
	text-indent: 15px;
}
#subpage .link::before {
    position: absolute; top: 10px; left: 0;
    display: block; content:""; clear: both;
    width: 0; height: 0;
    border-left: 5px solid black;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
}


/* EMBEDDED */
#subpage .embedded { position:relative; clear:both; margin:20px 2%;}
#subpage .embedded iframe { width: 100%; border: none;}
#subpage .map { position:relative; clear:both; margin:20px 2%;}
#subpage .map iframe { width: 100%; height: 400px; border: none;}


/* PHOTO */
#subpage .photo-l { float:left;}
#subpage .photo-r { float:right;}
#subpage .photo-c { clear:both; text-align:center;}
#subpage .photo-l img { padding:0 20px 0 0;}
#subpage .photo-r img { padding:0 0 0 20px;}
#subpage .photo-c img { padding:0 0 10px;}
#subpage .photo-l p,
#subpage .photo-r p,
#subpage .photo-c p { padding: 0 0 5px;}
#subpage .caption { font-size:80%; text-align:center;}


/* PHOTO BOX*/
#subpage ul.photo_box { float:left; margin:20px 2%;}
#subpage ul.photo_box li {}
#subpage ul.photo_box li.photo { margin:0 0 10px;}
#subpage ul.photo_box li.cap {}
#subpage ul.photo_box li.youtube { position: relative;}
#subpage ul.photo_box li.youtube iframe {
	position: absolute; top: 0; right: 0;
	width: 100% !important; height: 100% !important;
    border: none;
}
#subpage ul.g1 {width:96%x; float:none; }
#subpage ul.g2 {width:46%;}
#subpage ul.g3 {width:29.3%;}
#subpage ul.g4 {width:21%;}
#subpage ul.g5 {width:16%;}
#subpage ul.g1 img { max-width:960px; width: 100%; height:auto;}
#subpage ul.g2 img { max-width:460px; width: 100%; height:auto;}
#subpage ul.g3 img { max-width:293px; width: 100%; height:auto;}
#subpage ul.g4 img { max-width:210px; width: 100%; height:auto;}
#subpage ul.g5 img { max-width:160px; width: 100%; height:auto;}


/* BOX1 */
#subpage .box1 { clear:both; margin:20px 2%; width:96%; overflow: hidden;}
#subpage .box1 .photo-c img {max-width:960px; width: 100%; height:auto;}
#subpage .box1 .photo-l,
#subpage .box1 .photo-r { width:46%;}
#subpage .box1 .photo-l img {max-width:460px; width: calc(100% - 20px); height:auto;}
#subpage .box1 .photo-r img {max-width:460px; width: calc(100% - 20px); height:auto;}
#subpage .box1 .come { font-size:105%; /*overflow:hidden; 折り返し無*/}


/* BOX2 */
#subpage .box2 { float:left; margin:20px 2%; width:46%; overflow: hidden;}
#subpage .box2 .photo-l,
#subpage .box2 .photo-r { width:46%;}
#subpage .box2 .photo-l img {max-width:210px; width: calc(100% - 20px); height:auto;}
#subpage .box2 .photo-r img {max-width:210px; width: calc(100% - 20px); height:auto;}
#subpage .box2 .come { font-size:105%;}


/* LINE */
#subpage .line { clear:both; margin:20px 2%; width:96%;}
#subpage .line hr { height: 1px; border: none; border-top: 1px #AAA dotted;}



/*--------------------------------------------------------
  MAIL ITEM
--------------------------------------------------------*/
table.formTable { margin:30px auto 0; width: 100%;}
table.formTable tr {}
table.formTable tr th,
table.formTable tr td { padding: 10px 0; font-size:105%;}
table.formTable tr th { width:32%; font-weight:400; text-align: left; position: relative;}
table.formTable tr td { width:68%; }
table.formTable tr th span {
	position: absolute; top: 18px; right: 15px;
	float:right;
	padding:3px 10px;
	font-size:70%;
	font-weight: 400;
	color:#FFF;
	line-height:100%;
	background:#0064FF;
}
table.formTable tr td p+p { margin-top:5px;}
table.formTable select,
table.formTable input[type="text"],
table.formTable textarea {
	padding:10px 15px;
	background:rgba(0,100,255,0.05);
	box-sizing:border-box;
	border: none;
}
table.formTable input[type="text"],
table.formTable textarea { width: 100%;}
table.formTable textarea { width:100%; height:120px;}
table.formTable input[type="file"] { display:block; padding:10px 15px; background:rgba(0,100,255,0.05);}
table.formTable  input[type="text"]:focus,
table.formTable  textarea:focus { background:rgba(0,100,255,0.30); transition:.3s;}
table.formTable  td.privacy { padding:0; border: 3px solid #ddd;}
table.formTable  td.privacy .comment { margin: 0; padding: 20px; height: 150px; overflow:auto;}
.g-recaptcha { width: 310px; margin:0 auto 30px;}
input.submitBtn:disabled{
	background-color: #aaa;
	cursor:not-allowed;
}

.b_inqu { text-align: center;}
.b_inqu .btn.b1 { float: none; margin: auto; width: 400px; }
.b_inqu .btn.b2 { display: inline-block; float: none; margin: 0 1%;  width: 240px;}
.b_inqu .btn {
    margin:40px auto; padding: 5px;
    background-image: linear-gradient(90deg, #48acff, #9d0fae);
    border-radius: 100px;
    overflow: hidden;
    box-shadow: 0px 2px 2px 2px rgba(0, 0, 0, 0.05);
}
.b_inqu .btn span {
    cursor: pointer;
    position: relative;
    display: block;
    width: 100%;
    background: #fff;
    border-radius: 100px;
    z-index: 1;
    transition: .3s;
    border: none;
    box-sizing: border-box;
}
.b_inqu .btn input[type="submit"],
.b_inqu .btn input[type="reset"],
.b_inqu .btn input[type="button"]{
    cursor: pointer;
    display: block;
    width: 100%;
    padding: 20px 20px;
	font-family:  "Yu Gothic", YuGothic, "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
    font-size: 100%;
    font-weight: 600;
    color:#000;
    text-align: center;
    text-decoration: none;
    background:none;
    border-radius: 100px;
    border: none;
    position: relative;
    z-index: 99;
}
@media only screen and (min-width:750px){
     .b_inqu .btn span {
        transition: .3s;
      }
     .b_inqu .btn span::before {
        cursor: pointer;
        position: absolute; top: 0; left:-5px;
        margin: auto; content: "";
        width:calc(100% + 10px); height: 100%;
        background-image: linear-gradient(90deg, #48acff, #9d0fae);
        border-radius: 100px;
        z-index: -1;
        transform-origin: 50% 0%;
        transform: scaleY(0);
        transition: transform ease .3s;
    }
   .b_inqu .btn span:hover { color: #fff;}
    .b_inqu .btn span:hover::before { transform-origin: 50% 100%; transform: scaleY(1); }
    .b_inqu .btn span:hover input[type="submit"],
    .b_inqu .btn span:hover input[type="reset"],
    .b_inqu .btn span:hover input[type="button"]{color:#fff;}
}

#formWrap table.formTable { width: 100%; margin-bottom: 30px;}
#formWrap table.formTable tr {}
#formWrap table.formTable tr th { width:25%; border-bottom: 1px solid #ccc;}
#formWrap table.formTable tr td { width:75%; border-bottom: 1px solid #ccc;}
#formWrap table.formTable tr:nth-child(8),
#formWrap table.formTable tr:nth-child(7) { display: none !important;}
#formWrap table.formTable tr:last-child td { overflow-wrap:break-word; word-break:keep-all;}

/* ERROR */
#error h4 {
	margin: 20px 0;
	padding:1%;
	color:#E50012!important;
	border: 1px solid #E50012;
	background:rgba(229,0,18,0.10);
}
#error p { margin-top:5px; text-align:left; font-size:105%;}
#error .error_messe { padding:20px; font-size:105%; background:rgba(229,0,18,0.10);}