@charset "utf-8";
/*
Theme Name: wp_tmp_pr
Version:mm1.0
Description: original theme
Author: AITIE
*/

@import url('https://fonts.googleapis.com/css2?family=Tinos:ital,wght@0,400;0,700;1,400;1,700&display=swap');

.tinos-regular {
  font-family: "Tinos", serif;
  font-weight: 400;
  font-style: normal;
}

.tinos-bold {
  font-family: "Tinos", serif;
  font-weight: 700;
  font-style: normal;
}

.tinos-regular-italic {
  font-family: "Tinos", serif;
  font-weight: 400;
  font-style: italic;
}

.tinos-bold-italic {
  font-family: "Tinos", serif;
  font-weight: 700;
  font-style: italic;
}



/* リセット */
@charset "utf-8";
/* CSS Document */

	
/*cssのリセット*/
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 {
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  border: 0;
  outline: 0;
  background: transparent;
}
 
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
  display: block;
}
*{
	box-sizing:border-box;
}
ul,
ol {
  list-style: none;
}
 
blockquote,
q {
  quotes: none;
}
 
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}
br {
	display: block;
}
a {
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
  color: #B40000;
}
a:hover {
  transition: all 1s ease 0s;
  opacity: 0.6;
}
area:focus{
  outline: darkorange solid 2.4rem;
}
ins {
  text-decoration: none;
  color: #000;
  background-color: #ff9;
}
 
mark {
  font-weight: bold;
  font-style: italic;
  color: #000;
  background-color: #ff9;
}
 
del {
  text-decoration: line-through;
}
 
abbr[title],
dfn[title] {
  cursor: help;
  border-bottom: 1px dotted;
}
 
table {
  border-spacing: 0;
  border-collapse: collapse;
}
 
hr {
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0;
  border: 0;
  border-top: 1px solid #ccc;
}
.clearfix:after { /*回り込み解除*/
    display: block;
    content: "";
    clear: both;
}
.Tc {
	text-align: center;
	margin: auto;
}
.Tl {
	text-align: left;
}
.small {
	font-size: 12px;
}
.F0 {
	font-size: 0;
}
/* inline-block空白消し */
.list {
	letter-spacing: -.4em;
}
.list li,
.list div {
	display: inline-block;
    letter-spacing: normal; /* 文字間を元に戻す */
}
/* 共通 */
html {
  font-size: 16px;
}
body {
    font-family: "Noto Sans JP", 'Hiragino Kaku Gothic Pro', "ヒラギノ角ゴ Pro W3", "Meiryo", "メイリオ", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", Arial, Roboto, "Droid Sans", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;	
    color: #FFF;
    background: #000;
}

h1, h2, h3, h4, h5, h6, strong {
    font-family: "Noto Sans JP", 'Hiragino Kaku Gothic Pro', "ヒラギノ角ゴ Pro W3", "Meiryo", "メイリオ", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", Arial, Roboto, "Droid Sans", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;	
    font-weight: 700;
}
.rich_font {
    font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
    font-weight: 400;
}
img {
	max-width: 100%;
	height: auto;
}
.Tcol_Red {
	color: #B40000;
}
/******* editor *******/
 
.entry p {
margin: 0.5em 0;
display: block;
}

.entry dl dd,
.entry table td {

}
.entry dl dt,
.entry table th {
	font-weight: bold;
}

.entry h1 {
	font-size: 32px;
}
.entry h2 {
	font-size: 24px;
}
.entry h3 {
	font-size: 20px;
}
.entry h4 {
	font-size: 16px;
}

strong { font-weight: bold; }
em { font-style: italic; }
blockquote {
    display: block;
    -webkit-margin-before: 1em;
    -webkit-margin-after: 1em;
    -webkit-margin-start: 40px;
    -webkit-margin-end: 40px;
}
 
/* img */
 
.aligncenter {
    display: block;
    margin: 0 auto;
}
.alignright { float: right; padding-left: 1em; }
.alignleft { float: left;  padding-right: 1em;}

/* spmenu */
.wpr_search search_top,
div.wpr_search {
	display: none!important;
}

/* 共通テーブル */
table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0px;
}
table tr {
	border-bottom: 1px solid #AFAFAF;
}
table th {
	vertical-align: middle;
    padding: 3rem;
    width: 30%;
    text-align: left;
}
table td {
    padding: 3rem;
    vertical-align: middle;
	position: relative;
	text-align: left;
}
table td:before{
	content: "";
    width: 1px;
    border-left: 1px solid #AFAFAF;
    position: absolute;
    left: 0px;
    top: 25px;
    bottom: 25px;
}
/* gmap */
.gmap {
height: 0;
overflow: hidden;
padding-bottom: 56.25%!important;
position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}
/* フェードin */
.element {
  /* 最初は非表示 */
  transform: translateY(50px);
  opacity: 0;
  visibility: hidden;
  transition: transform 2.5s, opacity 1s, visibility 1s;
}
.is-fadein {
  transform: translateX(0);
  opacity: 1;
  visibility: visible;
}

/* 右追尾ボタン */
#FixAct {
    position: fixed;
    bottom: 10px;
    z-index: 10;
    right: 0;
    text-align: center;
    margin: auto;
}
#FixAct ul {
	display: flex;
    align-items: center;
    writing-mode: vertical-rl;
	font-size: 18px;
}
#FixAct ul li.Totop a {
    background: #B40000;
    border-radius: 0;
    display: block;
    width: 58px;
    height: 58px;
    line-height: 58px;
    text-align: center;
    color: #fff;
}
#FixAct ul li.Totop a:before {
	content: "\f343";
    position: absolute;
    font-family: "dashicons";
    font-size: 1.8rem;
    left: 0px;
    right: 0px;
    top: 0;
    bottom: 0;
    margin: 0 auto;
    color: #FFF;
}
.Totop img {
	max-width: 50px;
}
.ToForm {
    position: fixed;
    top: 50%;
    right: 0px;
}
.ToForm a {
    padding: 30px 15px;
    border-radius: 10px 0px 0px 10px;
}
/* dl共通 */
dl {
	xmax-width: 700px;
	margin: 30px auto;
}
dt {
	font-size: 18px;
    line-height: 1.5;
    margin: 30px auto 15px;
    text-align: left;
	font-weight:bold;
}
dd {
	margin-bottom: 15px;
}
dd img {
	margin-bottom: 15px;
}
/* 横並び */
.colJcSt {
	width: 100%;
    display: flex;
    display: -ms-flexbox;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
	justify-content: start;
    align-items:center;
	overflow-wrap: break-word;
    word-wrap: break-word;
}
.colJcCt {
	width: 100%;
    display: flex;
    display: -ms-flexbox;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
	justify-content: center;
    align-items:center;overflow-wrap: break-word;
    word-wrap: break-word;
}


/* 共通ボタン */
.MoreBtn1 a {
    text-align: center;
    padding: 10px 28px;
    color: #B40000;
    border: 1px solid #000;
    width: 100%;
    display: inline-block;
    background: #000;
}
.MoreBtn2 a {
    text-align: center;
    padding: 10px 28px;
    color: #fff;
    border: 1px solid #B40000;
    background: #B40000;
    min-width: 240px;
    display: inline-block;
}
.MoreBtn3 a {
    text-align: center;
    padding: 10px 28px;
    color: #fff;
    border: 1px solid #000;
    background: #000;
    min-width: 240px;
    display: inline-block;
}

@media screen and (max-width: 768px) {
table th {
    padding: 1rem;
}
/* 追尾ボタン */
#FixAct {
	position: fixed;
    bottom: 0;
    z-index: 10;
    right: inherit;
    text-align: center;
    margin: auto;
    width: 100%;
    background: rgba(0,0,0,0.6);
	padding: 5px;
}
#FixAct ul {
    display: flex;
    align-items: center;
    writing-mode: inherit;
    width: 100%;
    display: flex;
    display: -ms-flexbox;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: space-around;
    text-align: center;
    align-content: space-around;
}
#FixAct ul li {
    background: #B40000;
    font-size: 14px;
	width: 45%;
	padding: 10px 5px;
	position: relative;

}
#FixAct ul li a {
    padding: 0;
	color: #FFF;
}
#FixAct ul li.Totop a,
#FixAct ul li.ToTel a {
    background: #B40000;
    border-radius: 0;
    display: block;
    width: 100%;
    height: 30px;
    line-height: 50px;
    text-align: center;
    color: #fff;
}
#FixAct ul li.Totop a:before {
    font-size: 1.0rem;
    top: -10px;
}
#FixAct ul li.ToTel a:before {
    content: "\f525";
    position: absolute;
    font-family: "dashicons";
    font-size: 1.0rem;
    left: 0px;
    right: 0px;
    top: -10px;
    bottom: 0;
    margin: 0 auto;
    color: #FFF;
}
.ToForm {
	position: inherit;
}
}
@media screen and (max-width: 680px) {
.MoreBtn1 a {
	min-width: 100%;
}
.MoreBtn2 a {
    min-width: 100%;
}
}
@media screen and (max-width: 480px) {

table th {
    width: auto;
    display: block;
    padding: 1rem 1rem 0;
}
table tr:nth-child(1) {
	border-top: 1px solid #ccc;
}
table td {
	display:block;
    padding: 1rem;
}
table td:before{
    top: 10px;
    bottom: 10px;
}
}
/*! switch view
======================================================= */
.viewPc{
	display: block;
}
.viewTb{
	display: none;
}
.viewSp{
	display: none;
}
.viewSpNav{
	display: none;
}
@media screen and (max-width:1024px){
.viewSpNav{
	display: block;
}
}
@media screen and (max-width:768px){
.viewPc{
	display: none;
}
.viewTb{
	display: block;
}
.viewSp{
	display: block;
}
}

*, *:before, *:after {
	box-sizing: border-box;
}

@media screen and (max-width: 480px) {
html {
  font-size: 14px;
}
.alignright { float: none; padding-left: 0; }
.alignleft { float: none;  padding-right: 0;}

}

a img:hover {
    transform: scale(1.05);
    transition-duration: 0.3s;
}

/* wpr menu custam */
#wprmenu_bar .menu_title a {
	display: block !important;
	text-align: center !important;
}

/* フレーム */
#wrapper,#Header,#Footer {
	width: 100%;
	margin: 0 auto;
	position: relative;
}
.Contents {
	width: 100%;
	margin: 0 auto;
	padding: 5% 0 0;
	position: relative;
}
.ColInner {
	position: relative;
	padding: 20px;
}
.Inner {
	max-width: 1200px;
    margin: 0 auto;
	position: relative;
}
.Center {
	text-align: center;
	margin: auto;
	position: relative;
}
.InnerBox {
	max-width: 700px;
    margin: 0 auto;
	position: relative;
}
.PostContents {
    max-width: 760px;
    margin: 0 auto;
    position: relative;
    text-align: left;
    font-size: 16px;
    line-height: 1.3;
    padding: 5% 0;
    box-sizing: border-box;
}
.Contact {
	max-width: 680px;
    margin: 0 auto;
	text-align: left;
}
.Parent {
    text-align: center;
    margin: 0 auto 30px;
}
.Parent0 {
    text-align: center;
    margin: 0 auto;
}
.ParentL {
    text-align: left;
    margin: 0 auto 30px;
}
#archive,
.FixedPage {
	margin-top: 100px;
}
.Irink {
    padding-top: 100px;
    margin-top:-100px;
}
@media screen and (max-width: 1024px) {

.Contents {
	padding: 40px 0 0;
}
.Inner,
.InnerBox {
	max-width: 90%;
}

.Irink {
    padding-top: 46px;
    margin-top:-46px;
}
}

/* フォントスタイル */

/* h2タイトル */
.TitleTop {
    font-size: 3rem;
    color: #B40000;
    display: inline-block;
    margin-bottom: 30px;
}
.TitleTop span {
	display: block;
    font-size: 1rem;
	color: #FFF;
}
.TitleTop2 {
    font-size: 3rem;
    color: #FFF;
    margin-bottom: 30px;
	text-align: center;
}
.TitleTop2 span {
	display: block;
    font-size: 1rem;
    color: #000;
}
/* h3タイトル */
.catch {
	font-size: 1.5rem;
}

.TitleFixed {
    text-align: center;
	text-shadow:1px 1px 4px #000000;
	color:#FFFFFF; 
    display: inline-block;
    min-width: 320px;
    padding: 15px 1em;
    font-size: 40px;
    line-height: 1.3;
    font-weight: normal;
    margin-bottom: 30px;
	font-weight: bold;
    background: rgba(0,0,0,0.4);
}
.TitlePost {
    min-width: 320px;
    padding: 15px 0.5em;
    font-size: 2rem;
    line-height: 1.3;
    border-bottom: #FFF solid 2px;
    font-weight: normal;
    margin-bottom: 5%;
}
.TitleSide {
    border-bottom: 2px solid #ddd;
    padding: 10px;
    border-left: 10px solid #8FCCC0;
    margin-bottom: 20px;
}
.sd {
	text-shadow:1px 1px 4px #000000; color:#FFFFFF;
}
.TextSub {
	font-size: 1.5rem;
}
.Small {
	font-size: 12px;
}
#News h2,
.Top h2 {
	color: #FFF;
    font-size: 2rem;
    text-align: center;
    letter-spacing: 0.2rem;
    margin-bottom: 20px;
}
.htext {
    font-size: 12px;
}
@media screen and (max-width: 768px) {

.Title {
	font-size: 5vw;
}

.TitlePage {
    font-size: 5vw;
	padding: 20px;
}
.Title {
    font-size: 2rem;
}
}
@media screen and (max-width: 680px) {

.TitleTop {
    font-size: 2.5rem;
}

}

/* メインナビ */
/*! #gHeader
======================================================= */
#gHeader{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	min-width: 320px;
	height: 48px;
	border: 1px solid #e2e2e2;
	border-width: 1px 0;
	z-index: 2000;
}
#gHeader .Logo img {
	max-height: 50px;
}
#gHeader .Logo {
	padding: 5px 0 0 20px;
	font-weight: normal;
	font-size: 14px;
	color: #FFF;
}
@media screen and (max-width:1024px){
#gHeader .Logo {
	padding:0;
}
#gHeader .Logo img {
	padding:5px;
}
}
#gHeader .btnMenu{
	position: absolute;
	top: 2px;
    right: 2px;
    width: 42px;
    height: 42px;
	cursor: pointer;
}
#gHeader .btnMenu span{
	display: block;
	position: absolute;
	left: 10px;
	width: 26px;
	height: 2px;
	background: #B40000;
	-webkit-transition: .3s linear;
	transition: .3s linear;
}
#gHeader .btnMenu span:nth-child(1){
	top: 10px;
}
#gHeader .btnMenu span:nth-child(2){
	top: 17px;
}
#gHeader .btnMenu span:nth-child(3){
	top: 24px;
}
#gHeader .btnMenu .txt{
	position: absolute;
	top: 32px;
	left: 14px;
	width: 18px;
	line-height: 0;
}
#gHeader .btnMenu .txt img{
	line-height: 1;
}
#gHeader .btnMenu.open span:nth-child(1){
	top: 18px;
	-webkit-transform: rotate(405deg);
	transform: rotate(405deg);
}
#gHeader .btnMenu.open span:nth-child(2){
	opacity: 0;
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}
#gHeader .btnMenu.open span:nth-child(3){
	top: 18px;
	-webkit-transform: rotate(315deg);
	transform: rotate(315deg);
}
#gHeader .btnMenu.open p{
	opacity: 0;
}
@media screen and (min-width:600px) and (max-width:1024px){
	#gHeader{
		min-width: 600px;
		height: 48px;
	}
	#gHeader .btnMenu{
		width: 48px;
		height: 48px;
		top: -3px;
	}
	#gHeader .btnMenu span{
		left: 13px;
		width: 24px;
	}
	#gHeader .btnMenu span:nth-child(1){
		top: 13px;
	}
	#gHeader .btnMenu span:nth-child(2){
		top: 20px;
	}
	#gHeader .btnMenu span:nth-child(3){
		top: 27px;
	}
	#gHeader .btnMenu .txt{
		top: 34px;
		left: 13px;
		width: 24px;
	}
	#gHeader .btnMenu.open span:nth-child(1){
		top: 23px;
	}
	#gHeader .btnMenu.open span:nth-child(3){
		top: 23px;
	}
}
@media screen and (min-width:1025px){
	#gHeader{
		/* position: absolute; */
		min-width: 1024px;
		height: 100px;
		border: none;
	}

}
/*! .gNav
======================================================= */
.gNav .menu li > a br, .gNav .menu li > a span {
    margin: 0;
}
@media screen and (max-width:1024px){
	.gNav{
		display: none;
		position: absolute;
		top: 47px;
		left: 0;
		width: 100%;
		padding: 0 0 15px;
		background: #fff;
		overflow: hidden;
		z-index: 4000;
	}
	.gNav .menu{
		position: relative;
		top: -1px;
		margin: 0 0 15px;
		max-height: 450px;
		border-bottom: 1px solid #e1e1e1;
		overflow: scroll;
	}
	.gNav .menu li > a,
	.gNav .menu li > span{
		display: block;
		padding: 7px 25px;
		border-top: 1px solid #e1e1e1;
		color: #666;
		font-size: 93%;
		line-height: 2;
		cursor: pointer;
	}
	.gNav .menu li > span{
		position: relative;
	}
	.gNav .menu li > span::after{
		position: absolute;
		top: 14px;
		right: 15px;
		width: 12px;
		height: 12px;
		background: url(../img/icon_arrow01_gray.png) no-repeat;
		background-size: 12px;
		content: '';
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
		-webkit-transition: .3s linear;
		transition: .3s linear;
	}
	.gNav .menu li > span.open::after{
		-webkit-transform: rotate(270deg);
		transform: rotate(270deg);
	}
	.gNav .menu .menuSub{
		display: none;
	}
	.gNav .menu .menuSub li > a,
	.gNav .menu .menuSub li > span{
		position: relative;
		padding-left: 47px;
		background: #f9f9f9;
	}
	.gNav .menu .menuSub li > a::before,
	.gNav .menu .menuSub li > span::before{
		position: absolute;
		top: 15px;
		left: 32px;
		width: 7px;
		height: 7px;
		border: 1px solid #9e9e9e;
		border-width: 0 0 1px 1px;
		content: '';
		cursor: pointer;
	}
	.gNav .menu .menuSub ul > li > a{
		padding-left: 59px;
		border-top: 1px dashed #d5d5d5;
		border-bottom: 0;
		background: #ededed;
	}
	.gNav .menu .menuSub ul > li > a::before{
		left: 44px;
	}
	.gNav .btnClose{
		position: relative;
		width: 107px;
		margin: 0 auto;
		padding: 6px 0 4px 18px;
		border-radius: 1px;
		background: #B40000;
		color: #fff;
		font-size: 86%;
		text-align: center;
		line-height: 1.5;
		cursor: pointer;
	}
	.gNav .btnClose::after,
	.gNav .btnClose::before{
	position: absolute;
    top: 13px;
    left: 25px;
    width: 12px;
    height: 2px;
    background: #fff;
    content: '';
	}
	.gNav .btnClose::before{
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.gNav .btnClose::after{
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
}
@media screen and (max-width:1024px) and (min-width:600px) and (max-width:1024px){
	.gNav{
		top: 49px;
		left: auto;
		right: 0;
		width: 70%;
		padding: 0 0 20px;
	}
	.gNav .menu{
		margin: 0 0 20px;
		max-height: none;
		overflow: visible;
	}
	.gNav .btnClose{
		width: 120px;
	}
}
@media screen and (max-width:1024px){
	.overlayWrap{
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(51,51,51,.7);
		z-index: 2;
	}
}
@media screen and (min-width:1025px){
	.gNav{
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		overflow: visible;
	}
	.gNav .menu{
		position: absolute;
		top: 0;
		right: 0;
	}
	.gNav .menu li{
		float: left;
		width: auto;
	}
	.gNav .menu li > a,
	.gNav .menu li > span{
		display: block;
		position: relative;
		padding: 38px 20px 10px;
		min-height: 23px;
		color: #FFF;
		text-align: center;
		line-height: 1.5;
		cursor: pointer;
		text-decoration: none;
	}
	.gNav .menu li > a::before,
	.gNav .menu li > span::before{
		position: absolute;
		bottom: 0;
		left: 0;
		width: 0;
		height: 2px;
		background: #B40000;
		content: '';
		-webkit-transition: .3s linear;
		transition: .3s linear;
	}
	.gNav .menu li > a:hover {
		color: #B40000;
		opacity: 1.0;
	}
	.gNav .menu li > a.current::before,
	.gNav .menu li > a:hover::before,
	.gNav .menu li > span.current::before,
	.gNav .menu li > span:hover::before{
		width: 100%;
	}
	.gNav .menu li > a.current::after,
	.gNav .menu li > a.open::after,
	.gNav .menu li > span.current::after,
	.gNav .menu li > span.open::after{
		-webkit-transform: rotate(0);
		transform: rotate(0);
	}
	.gNav .menu li:nth-child(6) > span{
		position: relative;
		padding-right: 15px;
	}

	.gNav .menu li.contact{
		width: 149px;
		padding: 30px 0 0 23px;
	}
	.gNav .menu li.contact a{
		min-height: 18px;
		padding: 10px 0 12px 22px;
		border-radius: 2px;
		background: #0095ea;
		color: #fff;
		font-size: 92%;
		text-align: center;
		line-height: 1.5;
		-webkit-transition: .3s linear;
		transition: .3s linear;
	}
	.gNav .menu li.contact a::before{
		display: none;
	}
	.gNav .menu li.contact a::after{
		position: absolute;
		top: 15px;
		bottom: auto;
		left: 25px;
		width: 14px;
		height: 10px;
		background: url(../img/icon_mail01_white.png) no-repeat;
		content: '';
	}
	.gNav .menu li.contact a:hover{
		background: #084ea1;
	}
	.gNav .menu li.contact::before{
		display: none;
	}
	.gNav .menu .menuSub{
		display: none;
		position: absolute;
		top: 100px;
		right: 0;
		width: 100vw;
		min-width: 1200px;
		padding-right: 25px;
		background: #f3f3f3;
		text-align: right;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		letter-spacing: -.5em;
	}
	.gNav .menu .menuSub li{
		display: inline-block;
		position: relative;
		float: none;
		width: auto;
		background: 0 0;
		letter-spacing: .06em;
	}
	.gNav .menu .menuSub li a,
	.gNav .menu .menuSub li span{
		position: relative;
		padding: 19px 15px 20px;
		min-height: 21px;
		background: 0 0;
		font-size: 93%;
	}
	.gNav .menu .menuSub li a::before,
	.gNav .menu .menuSub li span::before{
		position: absolute;
		top: auto;
		bottom: 0;
		left: 0;
		width: 0;
		height: 8px;
		border: none;
		background: #F2E8B6;
	}
	.gNav .menu .menuSub li a.current::before,
	.gNav .menu .menuSub li a:hover::before,
	.gNav .menu .menuSub li span.current::before,
	.gNav .menu .menuSub li span:hover::before{
		width: 100%;
	}
	.gNav .menu .menuSub li a::after,
	.gNav .menu .menuSub li span::after{
		display: none;
	}
	.gNav .menu .menuSub li.environment:hover a::before{
		width: 0;
	}
	.gNav .menu .menuSub li.environment:hover::after{
		position: absolute;
		bottom: 0;
		left: 50%;
		width: 0;
		height: 0;
		margin-left: -10px;
		border-style: solid;
		border-width: 0 10px 10px 10px;
		border-color: transparent transparent #F2E8B6;
		content: '';
	}
	.gNav .menu .menuSub li.environment a + ul{
		position: absolute;
		top: 60px;
		left: -45px;
		width: 180px;
		max-height: 0;
		overflow: hidden;
		-webkit-transition: .3s linear;
		transition: .3s linear;
	}
	.gNav .menu .menuSub li.environment:hover a + ul{
		height: auto;
		max-height: 121px;
	}
	.gNav .menu .menuSub ul li{
		display: block;
		border: none;
		background: #fff;
	}
	.gNav .menu .menuSub ul li + li{
		border-top: 1px solid #fced8a;
	}
	.gNav .menu .menuSub ul li a{
		position: relative;
		padding: 8px 15px 11px;
		border: none;
		background: #F2E8B6;
		color: #084ea1;
		text-align: left;
		-webkit-transition: .3s linear;
		transition: .3s linear;
	}
	.gNav .menu .menuSub ul li a:hover{
		background: #fced8a;
	}
	.gNav .menu .menuSub ul li a::before{
		display: none;
	}
	.gNav .menu .menuSub ul li a::after{
		position: absolute;
		top: 14px;
		right: 16px;
		width: 12px;
		height: 12px;
		background: url(../img/icon_arrow01_white.png) no-repeat;
		background-size: 12px;
		content: '';
		-webkit-transition: .1s linear;
		transition: .1s linear;
	}
	.gNav .menu .menuSub ul li a:hover::after{
		right: 14px;
	}
}
/*! #gHeader.fixed
======================================================= */
@media screen and (min-width:1025px){
	#gHeader.stop{
		position: fixed;
		top: -90px;
		height: 100px;
		box-shadow: 1px 1px 2px rgba(46,43,43,.1);
	}
	#gHeader.stop.fixed{
		top: 0;
		-webkit-transition: .3s linear;
		transition: .3s linear;
	}
	#gHeader.stop .gNav .menu > li > a::after,
	#gHeader.stop .gNav .menu > li > span::after{
		top: 25px;
	}
	#gHeader.stop .gNav .menu li.contact{
		padding-top: 20px;
	}
	#gHeader.stop .gNav .menu li.contact a{
		padding: 10px 0 12px 22px;
	}
	#gHeader.stop .gNav .menu li.contact a::after{
		top: 15px;
	}
	#gHeader.stop .gNav .menu .menuSub{
		top: 80px;
	}
}

/* メインビュー */
#Mv {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 10px;
    box-sizing: border-box;
    width: 100%;
    height: auto;
    min-height: 680px;
    background-size: cover;
    background-position: top;
	position: relative;
	margin-top:100px;
}
.MvImg {
    background-image: url(./img/mvbg2.jpg);
}
#Mv .MvBox {
}
.main-copy-set {
	box-sizing: border-box;
    width: 80%;
    position: absolute;
    top: 100px;
    left: 8%;
    z-index: 100;
}
#Mv h1 {
	color: #000;
    text-shadow: 2px 2px 3px #ffffff;
    box-sizing: border-box;
    z-index: 9;
    font-weight: bold;
    vertical-align: top;
    font-size: 5rem;
    line-height: 1.4;
}
#Mv h1 span{
	color: #B40000;
}
#Mv p {
    color: #FFF;
    text-shadow: 2px 2px 3px #000;
}
.main-copy01 {
    font-family: 'Noto Serif JP', serif;
    font-weight: 500;
    display: inline-block;
    margin-top: 25px;
    xopacity: 0;
    transition: all 0.8s;
}
.main-copy02 {
    margin-right: 2rem;
    margin-top: 25px;
    vertical-align: top;
    font-size: 1.4rem;
    line-height: 2.2;
	font-weight: bold;
}
#Mv h1 br {
	margin: 0;
}
.Logo {
    position: absolute;
    z-index: 1;
    top: 15%;
    height: 50px;
}
.Logo img {
	width: inherit;
	max-width: 100%;
    height: 50px;
}

/* 下部ページメインビュー */
#SubMv {
	margin-top: 74px;
    position: relative;
    margin-bottom: 20px;
}
#SubMv .TitleTop {
	text-align: right;
}
#SubMv .PageTitle {
position: absolute;
    top: 0;
    box-sizing: border-box;
    display: inline-block;
    width: 45%;
    margin-top: 0;
    padding: 5%;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 10;
}
#SubMv .PageVisual {
	padding-left: 30%;
}
/* 新着 */
#News {
	display: flex;
    flex-wrap: wrap;
}
#News .NewsSection1 {
	flex: 0 0 25%;
	padding: 0 20px 20px 0;
}
#News .NewsSection2 {
	flex: 0 0 70%;
    max-width: 70%;
    padding: 0 0 0 5%;
    text-align: left;
}
#News h3.NewsTitle {
	margin-bottom: 0.5rem;
    display: inline-block;
}
#News a h3.NewsTitle:hover {
	text-decoration: underline;
}
#News .NewsBox_Head {
	background-color: #B40000;
    color: #fff;
    position: relative;
    top: -130px;
    padding: 40px 20px;
}
#News .MoreBtn1 {
    text-align: center;
}
#News .NewsSection2 ul li {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #efefef;
}
.NewsTime {
    flex-basis: 120px;
    letter-spacing: 2px;
    font-size: .8rem;
}
.NewsBox {
flex-basis: calc(100% - 120px);
}

.NewsBox {
    font-size: 14px;
}
.NewsInfo {
	border-bottom: 1px dotted #AFAFAF;
    padding: 10px 0;
    margin-bottom: 10px;
    padding: 30px;
    font-size: 14px;
    background: #fbfbfb;
    border: 1px solid #eee;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	min-height: 90px;
}
.NewsCat a {
    color: #B40000;
    padding: 0 15px 0;
    margin: 0 5px;
    display: inline-block;
    font-size: 12px;
    border: 1px solid #B40000;

}
.NewsNew {
    color: #FFF;
    padding: 0px 15px;
    background: #B40000;
    font-size: 12px;
    border: 1px solid #B40000;
}
.NewsInfo a {
	color: #FFF;
}

/* 新着アーカイブ*/
#archive .NewsBox {
    font-size: 100%;
}
#archive ul.NewsBox li {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #efefef;
}
/* カテゴリ―一覧表示 */
#CatList li{
    position: relative;
    max-width: 50%;
	padding: 20px;
    margin-bottom: 40px;
}
#CatList li span {
    position: absolute;
    left: 0;
	top: 0;
    padding: 10px;
	z-index:1;
}
#CatList li span a {
	display: block;
	color: #FFF;
}
#CatList li span a:hover {
opacity: 1.0;
}
#CatList li span.cat1 {
background: #B40000;
}
#CatList li span.cat2 {
	background: #c96bdd;
}
#CatList .ImgBox {
    width: 100%;
    height: auto;
    display: block;
    overflow: hidden;
}
#CatList .TextBox {
	position: relative;
    margin: -20px 0 0 16%;
    padding: 20px 30px 10px;
    border-top: 2px solid #B40000;
    background-color: #000;
    z-index: 1;
}
#CatList .published {
	font-size: 0.8rem;
}
#CatList .Links {
	text-align: right;
	font-size: 0.8rem;
}
#CatList .Links a {
	display: inline-block;
    position: relative;
    padding-left: 57px;
    transition: all .2s;
	color: #FFF;
}
#CatList .Links a:hover {
	color: #B40000;
}

#CatList .Links a::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 35px;
    height: 7px;
    margin-top: -4px;
    background: url(img/i-arrow.webp) 0 0 no-repeat;
    background-size: 35px 7px;
    transition: all .4s;
}
#CatList .Links a:hover::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 8px;
}

#Top1 .colJcSt {
	background: #B40000;
}
#Top2 .colJcSt {
	background: #162B70;
}
#Top3 .colJcSt {
	background: #07364B;
}
#Top4 .colJcSt {
	background: #6E1237;
}


#Top1 .colJcSt,
#Top3 .colJcSt {
	color: #000;
}
#Top2 .colJcSt,
#Top4 .colJcSt {
	flex-direction: row-reverse;
	color: #000;
}
#Top1 .colJcSt > div,
#Top2 .colJcSt > div,
#Top3 .colJcSt > div,
#Top4 .colJcSt > div {
	width: 50%;
}
#Top1 .colJcSt .TextCont,
#Top2 .colJcSt .TextCont,
#Top3 .colJcSt .TextCont,
#Top4 .colJcSt .TextCont {
	padding: 15px 5%;
}


#Top1 h3,
#Top2 h3,
#Top3 h3,
#Top4 h3 {
	margin-bottom: 15px;
}
#Top1 p,
#Top2 p,
#Top3 p,
#Top4 p {
	margin-bottom: 2rem;
}

@media screen and (max-width: 1024px) {
/* メインビュー */
#Mv {
margin-top: 48px;
}
#Mv h1 {
    font-size: 4.5rem;
}
.main-copy02 {
    font-size: 1.3rem;
}
/* トップページ */
.Logo {
	top: 0%;
    bottom: 0%;
}
.TitleTop2 {
    font-size: 2rem;
}
/* 子ページメインビュー */
#SubMv .TitleTop {
    font-size: 2rem;
}

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

/* メインビュー */
#Mv {
    min-height: 530px;
}

#Mv h1 {
    font-size: 2.5rem;
}
.main-copy02 {
    margin-right: 0rem;
    font-size: 1.1rem;
}
/* 子ページメインビュー */
#SubMv .PageVisual {
    padding-left: 0;
}
#SubMv .PageTitle {
    position: relative;
    top: 0;
    box-sizing: border-box;
    display: inline-block;
    width: 80%;
    margin-top: -50px;
    padding: 3%;
    border-top: 5px solid #B40000;
    background-color: #000;
    z-index: 10;
}

/* トップページ */
#News .NewsBox_Head {
    padding: 20px;
}
#News .NewsSection1 {
    flex: 100%;
    padding: 20px 20px 0;
    margin-bottom: -70px;
}
#News .NewsSection2 {
    flex: 100%;
    max-width: 100%;
    padding: 0 5%;
}
#Top1 .colJcSt > div,
#Top2 .colJcSt > div,
#Top3 .colJcSt > div,
#Top4 .colJcSt > div {
	width: 100%;
}
#Top1 .colJcSt,
#Top2 .colJcSt,
#Top3 .colJcSt,
#Top4 .colJcSt {
    width: 100%;
    display: flex;
    display: -ms-flexbox;
    flex-wrap: inherit;
    -ms-flex-wrap: inherit;
    justify-content: start;
    align-items: center;
    flex-direction: column-reverse;
}
/* カテゴリ―一覧表示 */
#CatList li {
    margin-bottom: 0px;
}
#CatList li span {
    padding: 5px;
    font-size: 0.8rem;
}
#CatList .TextBox {
    margin: 0;
    padding: 20px 0px 10px;
}
}
@media screen and (max-width: 414px) {
/* カテゴリ―一覧表示 */
#CatList li {
max-width: 100%;
}
}
/****** ヘッター ******/
header {
    width: 100%;
background-color: #000;
}

/* フッター */
footer {
	margin-top: 60px;
}
#Footer {
	position: relative;
	text-align: center;
}
#Footer .FooterBox {
    margin: 0 auto;
	background: #171717;
	margin: 0 auto;
	padding: 50px 0;
}
#Footer .colJcCt > div {
	width: 50%;
	padding: 60px 20px;
}
#Footer .TextCat2 .Tel {
	position: relative;
    display: inline-block;
    font-weight: bold;
    margin-bottom: 8px;
    padding-left: 38px;
    font-size: 2rem;
    line-height: 1.0;
    letter-spacing: 0.02em;
}
#Footer .TextCat2 .Tel::before {
	display: block;
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 30px;
    height: 30px;
    margin-top: -16px;
    background: url(img/icon-tel.svg) 0 0 no-repeat;
    background-size: 30px 30px;
}
#Footer .TextCat2 .Tel a {
	color: #2a2a2a;
}
#Footer .MoreBtn2 a {
	margin-top: 20px;	
}
#Footer .FooterBox2 {
    display: flex;
    flex-direction: row-reverse;
	margin-top: 80px;
    margin-bottom: 80px;
}
#Footer .FooterBox2 .Flogo {
    box-sizing: border-box;
    width: 50%;
    padding: 0 0 0 7%;
	text-align: left;
}
.Logoimg {
    width: 300px;
    height: auto;
    margin-bottom: 10px;
}
.FooterSnsBox {
	margin: 20px auto;
}
.FooterSnsBox a {
    color: #FFF;
}
.FooterSnsBox a:hover {
    transition: all 0.8s ease 0s;
    opacity: 1.0;
	color: #B40000;
}
.FooterSnsBox .fa-brands {
    font-weight: 400;
    font-size: 3rem;
	margin-right: 0px;
	padding: 5px;
}
/* フッターナビ */
#Footer .FooterBox2 #Fmanu {
	box-sizing: border-box;
    width: 50%;
    padding: 0 10% 0 0;
}
.Fnav {
    display: flex;
    justify-content: flex-end;
    text-align: right;
}
.Fnav .menu li a::before {
    display: inline-block;
    font-family: "dashicons";
    font-size: inherit;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    speak: none;
    text-decoration: none;
    text-transform: none;
    content: '\f345';
    left: 0;
    position: absolute;
    top: 4px;
    font-size: 10px;
    font-size: 1rem;
}
.Fnav ul {
    display: flex;
    justify-content: flex-end;
    text-align: right;
}
.Fnav .menu li {
	max-width: 100%;
    position: relative;
    display: block;
    cursor: pointer;
	padding-left: 1rem;
}
.Fnav .menu li a {
	color: #FFF;
    position: relative;
    display: block;
    text-decoration: none;
    margin: 0px auto;
    transition: .3s;
    cursor: pointer;
    padding-left: 16px;
    position: relative;
}
.Fnav .menu li a span,
.Fnav .menu li a br {
	display: none;
	margin: 0;
	padding: 0;
}
.Fnav .menu li a:hover {
    opacity: 1.0;
    display: block;
	color: #B40000;
}
.copyright {
	padding: 1em;
    font-size: 12px;
	text-align: center;
}
@media screen and (max-width:768px){

/* フッター */
#Fmanu {
    padding: 0;
	margin: 0 auto;
}
#Fmanu .col3 > div, .col3 > li {
    width: 100%;
    position: relative;
}
.FooterBox {
    margin-bottom: 30px;
}
.Fnav .menu li a::before {
	right: 10px;
    top: 20px;
	left: inherit;
}
.Fnav, .Fnav ul {
    display: block;
}
.Fnav .menu li {
    max-width: 100%;
    border-bottom: 1px solid #adb4bb;
	margin-top: 0px;
    text-align: left;
}
.Fnav .menu > li:last-child {
    border-right: 0px;
}
.Fnav .menu li a {
    padding: 15px;
    margin: 0px auto;
}
.Fnav .menu li a::after{
    bottom: 0px;
}
}

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

#Footer .colJcCt > div {
    width: 100%;
    padding: 60px 20px;
}
#Footer .colJcCt > div:nth-child(1) {
    padding: 60px 20px 0px;
}
#Footer .FooterBox2 {
    flex-direction: column;
    margin-top: 0px;
    margin-bottom: 20px;
}
#Footer .FooterBox2 #Fmanu {
    width: 100%;
	padding: 0 0% 5% 0;
}
#Footer .FooterBox2 .Flogo {
    width: 100%;
    padding: 5%;
}
}
/*******固定ページ*******/

/*　コンタクト */
#contact .TextCat2 .Tel {
	position: relative;
    display: inline-block;
    font-weight: bold;
    margin-bottom: 8px;
    padding-left: 38px;
    font-size: 2rem;
    line-height: 1.0;
    letter-spacing: 0.02em;
}
#contact .TextCat2 .Tel::before {
	display: block;
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 30px;
    height: 30px;
    margin-top: -16px;
    background: url(img/icon-tel.svg) 0 0 no-repeat;
    background-size: 30px 30px;
}
#contact .TextCat2 .Tel a {
	color: #B40000;
}

/* レンタルページ */
#rental .InBox {
	width: 50%;
    margin-bottom: 20px;
    padding: 0% 2%;
}
#rental .Area {
    padding: 20px;
    background: #FFF;
	color: #000;
}
#rental .Area p,
#rental .Area h4 {
    text-align: left;
}
#rental .InBox img {
	margin-bottom: 20px;
}
#rental .InBox .TArea{
	text-align: left;
}
#rental h3 {
    text-align: left;
    font-size: 1.3rem;
    border-bottom: solid 1px #FFF;
    margin-bottom: 20px;
    padding-bottom: 5px;
}
#rental .colJcSt {
	align-items: flex-start;
}

/* 会社概要 */
#com2 {
	background: #f6f6f6;
	margin-top: 5%;
}
.Intro {
    position: relative;
    display: flex;
    max-width: 960px;
    margin: 0 auto;
    background-color: #fff;
    z-index: 100;
}
.Intro .Img {
	width: 50%;
    padding: 0;
}
.Intro .Copy {
    display: flex;
    width: 50%;
    justify-content: flex-end;
}
.Intro .Copy h3 {
	padding: 20% 90px 0 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: lr-tb;
    writing-mode: vertical-rl;
    vertical-align: top;
    font-size: 1.6rem;
    line-height: 2.0;
}
.IntroText {
	max-height: 100%;
    margin-top: -130px;
    padding: 230px 0 130px;
    background: url(img/com00_bg_pc.webp) 0 0 no-repeat;
    background-size: cover;
}
.IntroText .Inner {
	max-width: 800px;
    margin: 0 auto;
}
.IntroText .Inner p {
    margin-bottom: 1.5em;
    font-size: 1.1rem;
    line-height: 2.0;
}
#company .history {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 5%;
}
#company dl {
	background-color: #fff;
    margin: 10px auto;
    padding: 15px 40px 15px 40px;
}
#company dl dt {
	padding: 10px 0;
    line-height: 180%;
    text-align: justify;
    font-size: 1rem;
    margin: 0;
    font-weight: normal;
    width: 200px;
    float: left;
    padding-right: 20px;
    text-align: left;
    overflow: hidden;
    text-overflow: inherit;
    white-space: normal;
}
#company dl dd {
	padding: 10px 0;
    line-height: 180%;
    text-align: justify;
    font-size: 1rem;
    margin: 0;
    font-weight: normal;
}
/* お問合せ */
#contact {}
#company ol li {
    margin-bottom: 20px;
    border-bottom: 2px dashed #eee;
    list-style: none;
    padding: 0 0 20px;
}
/* プライバシー */
ol.Olstyle {
	list-style: decimal;
    list-style-position: inside;
	font-weight: bold;
	line-height: 1.5;
}
ol.Olstyle ul p {
    margin: 1em 0 0 1em;
    font-weight: normal;
}
ol.Olstyle ul {
    margin: 15px auto;
    padding-left: 2em;
    font-weight: normal;
}
ol.Olstyle ul li {
	list-style: disc;
}
ol.Olstyle ul li p {
    margin: 0 0 1em 1em;
    font-weight: normal;
}

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

/* 固定P */

/* 会社概要 */
#company dl dt {
    width: 100%;
    float: none;
    padding-right: 0;
}
}

/*single記事ページ*/
.PostBox {
	margin-bottom: 20px;

}
.PostDay {
    font-size: 12px;
    margin-right: 20px;
}
.PostCat {
    display: inline-block;
}
.PostCat a {
	color: #B40000;
    padding: 3px 15px 0;
    margin: 0 5px;
    display: inline-block;
    font-size: 12px;
    border: 1px solid #B40000;
}
.PostPage .entry {
    margin: 30px auto;
}
.PostPage .Box {
	margin-bottom: 20px;
}
/* パンくず */
.Pan {
    margin: 0 auto;
    padding: 3px;
}
.breadcrumbs {
    font-size: 0.8rem;
	max-width: 1200px;
    margin: 0 auto;
    text-align: right;
}
.breadcrumbs a {
	color: #B40000;
}
/* ページネーション */
.pagination ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}
.pagination ul li {
    padding: 5px;
    margin: 0 0.5em;
	font-size: 16px;
}
/* 次前の記事 */
.PageN_one {
	text-align: center;
    margin: 30px auto;
    max-width: 768px;
	border-bottom: 1px solid #B40000;
    border-top: 1px solid #B40000;
}
.PageN_one a {
	color: #FFF;
	text-decoration: none;
	display: block;
	padding: 50px 0;
}
.PageN_one a:hover {
	color: #B40000;
	text-decoration: underline;
}
.PageN_one .col2 {#B40000
    align-items: center;
	justify-content: space-around;
}
.PageN_one p {
    margin: 30px auto;
    background: #f7ab2c;
    color: #FFF;
    padding: 10px;
}
.PageN_one ul li {
	position: relative;
}
.previous,
.nexts {
    margin-bottom: 0 !important;
}
.previous:after {
    content: '';
    width: 30px;
    height: 30px;
    border: 0px;
    border-top: solid 2px #B40000;
    border-right: solid 2px #B40000;
    -ms-transform: rotate(225deg);
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
    position: absolute;
    left: 2%;
	top: 44px;
}
.nexts:after {
    content: '';
    width: 30px;
    height: 30px;
    border: 0px;
    border-top: solid 2px #B40000;
    border-right: solid 2px #B40000;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    right: 2%;
	top: 44px;
}

/******* アーカイブ *******/

/* machine一覧 */

/* 記事ページ */
.PostContents img {
	max-width: 100%;
	width: auto;
}

/*******************************
* フォームの設定
********************************/

.wpcf7 {
	text-align: center;
	margin: auto;
}

/* バッジの色 */
.wpcf7 p span.must,
.wpcf7 p span.free {
    font-weight: 400;
    color: #FFF;
}
.wpcf7 p span.Fcol01 {
    font-weight: 400;
    color: #fb0101;
}
.themeform input[type="submit"] {
    position: relative;
    margin: auto;
    left: 0;
    right: 0;
}
.wpcf7 input[type="submit"] {
  -webkit-appearance: none;
}
/* 必須マーク */
.must {
	background: #B40000;
}

/* 任意マーク */
.free {
	background: #FFF;
}

.must,
.free {
	color: #FFF;
	border-radius: 3px;
	font-size: 12px;
	margin-right: 10px;
	padding: 5px 10px;
	letter-spacing: 0.2em;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
    border-color: #0460D9;
}
.wpcf7 p {
    margin: 0 0px 3em;
	text-align: left;
}
/* フォーム入力項目 */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="date"],
.wpcf7 input[type="tel"] {
	padding: 10px;
    margin-top: 10px;
    border: 1px solid #ddd;
    border-radius: 3px;
    text-indent: 0.5em;
	width: 100%;
}
.wpcf7 .wpcf7-select {
	padding: 10px;
    margin-top: 10px;
    border: 1px solid #ddd;
    border-radius: 3px;
    text-indent: 0;
}
.wpcf7 textarea {
    width: 100%;
    padding: 10px;
    margin: 10px 0 0 0;
    border: 1px solid #ddd;
    border-radius: 3px;
}
/* フォーム入力項目 */
.themeform select {
	padding: 10px;
    margin-top: 10px;
    border: 1px solid #ddd;
    border-radius: 3px;
}
/* ファイル選択 */
.wpcf7 input[type="file"] {
    cursor: pointer;
    margin-bottom: 10px;
}
/* 送信ボタン */
input.sub-btn {
	width: 80%;
    padding: 20px 0;
    background: #B40000;
    color: #FFF;
    font-size: 1.1em;
    font-weight: bold;
    letter-spacing: 0.2em;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
    border: 0;
    margin: 0 auto;
    text-align: center;
    display: block;
	cursor: pointer; 
}

/* 送信ボタンホバー */
input.sub-btn:hover{
	background: #FFF;
	color: #B40000;
}

/* 送信ボタン中央寄せ */
.center {
	text-align:center;
}
.themeform button, .themeform input, .themeform label, .themeform select, .themeform textarea {
    font-size: 16px;
}

@media screen and (max-width: 480px) {
/* フレーム */
header {
    width: 100%;
}
#Footer {
	width: 100%;
}
.Contents {
	width: 100%;
	padding: 60px 0 0;
}
.Parent60,
.Parent60l {
    margin: 0 auto 30px;
}

/* フォント */
.TitleFixed {
    font-size: 6vw;
}
.index_content2 .headline, .top_concept_bottom h2, .Title, .logo_mark01, .logo_mark02, .logo_mark03, .hikaribo_type dt {
    font-size: 6vw;
	line-height: 1.5;
}
#about .index_news dl dt {
    font-size: 5.5vw;
}
/* メインビュー */
#Mv {
}
/* ヘッター */
#Mv h1 {
    padding-right: 0;
}

/* 次前の記事 */
.PageN_one {
    padding: 20px 0 0;
    margin: 0 auto;
}
.PageN_one ul li {
    display: block;
	width: 100%;
}

/* トップ */
.NewsInfo {
    padding: 10px 0;
    margin-bottom: 0;
    padding: 15px;
}
/* 記事ページ */

/* 固定ページ共通 */
/* レンタル一覧 */
#rental .InBox {
    position: relative;
    width: 100%;
}
#rental .InBox:last-child {
    margin-bottom: 0px;
}
.chart dl dt {
	display: block;
    width: 100%;
    border-right: 0;
    border-bottom: #71C3B5 3px double;
    margin: 0 auto;
}

}