/*

Theme Name:kitamurapainting

Author: kitamurapainting

Version: 1.0.0

Description: LANDMARKSオリジナル

*/



body, html {

    font-family: "游ゴシック体",YuGothic, 'Yu Gothic', sans-serif;

    font-weight: 500;

	-webkit-font-smoothing: antialiased;

	-moz-osx-font-smoothing: grayscale;

	height: 100%;

	margin: 0;

	-webkit-transition: opacity .8s ease;

	transition: opacity .8s ease;

}

html{

	width: 100%;

	height: 100%;

/*	font-size: 62.5%; */

/*	overflow: hidden;*/

}

body {

    background-color: #ffffff;

	letter-spacing: 0.06em;

	line-height: 2em;

	margin: 0;

	padding: 0;

	-webkit-text-size-adjust: none;

	width: 100%;

	height: 100%;

	overflow-y: auto;

	overflow-x: hidden!important;

    color: #666666;

    position: relative;

    left: 0;

    top: 0;

    -webkit-font-feature-settings: 'palt' 1;

    font-feature-settings: 'palt' 1;

    text-align: justify;

    text-justify: inter-ideograph;

    -webkit-font-smoothing: antialiased;

    -moz-osx-font-smoothing: grayscale;

    -webkit-text-size-adjust: 100%;

    -moz-text-size-adjust: 100%;

    -ms-text-size-adjust: 100%;

    -o-text-size-adjust: 100%;

    text-size-adjust: 100%;

	-webkit-overflow-scrolling: touch;

}



/*IE10*/

@media all and (-ms-high-contrast:none) {

body {

	letter-spacing:-0.01em;

	font-family: sans-serif;

    }

}

@media screen and (-webkit-min-device-pixel-ratio:0) {

body {

	letter-spacing:0.0028em!important;

    }

}







div, h1, h2, h3, h4, h5, p, ul, li, dl, dt, dd {

	margin: 0;

	padding: 0;

}

a {

	text-decoration: none;

	display: block;

	outline: none; 

	transition: all 0.5s ease 0s;

	-webkit-transition: all 0.5s ease 0s; 

}

a:-webkit-any-link {

	color: -webkit-link;

	text-decoration: none;

	cursor: pointer;

	display: inline;

	border-style:none;

}

a img {

	border-style:none;

	outline: none; 

}

a:focus{

	border-style:none;

	outline: none;

}

a img:active{

	border-style:none;

	outline:none;}

a:active{

	border-style:none;

	outline:none;}

img {

    border-style:none;

}

a:hover{

    opacity: 0.7;

	}

.Section.Content002 a:hover{

    opacity: 1;

	}

ul, ul li{

	list-style-type:none;

	}

::selection {

    background-color: #666666;

    color: #fff;

}

*:before, *:after {

	-webkit-box-sizing: border-box;

	-moz-box-sizing: border-box;

	box-sizing: border-box;

}

p {

    display: block;

    -webkit-margin-before: 1em;

    -webkit-margin-after: 1em;

    -webkit-margin-start: 0px;

    -webkit-margin-end: 0px;

	margin:0;

	font-size:14px;

}

br{

	line-height:1;

	}



input[type="text"], input[type="password"], textarea, select, input[type="url"], input[type="date"], input[type=submit], input[type=file], input[type=checkbox] {

    outline: none;

}

select {

  -moz-appearance: none;

  text-indent: 0.01px;

  text-overflow: '';

}

select::-ms-expand {

  display: none;

}

textarea {

    overflow: hidden;

}

[class^="icon-"], [class*=" icon-"] {

    font-family: 'icomoon';

    color: #ffffff;

    speak: none;

    font-style: normal;

    font-weight: normal;

    font-variant: normal;

    text-transform: none;

    line-height: 1;

    -webkit-font-smoothing: antialiased;

    -moz-osx-font-smoothing: grayscale;

}

.Animate-box {

		opacity: 0;

}



p,div,a,span{

    font-weight: 500;

}

/*------ Body・Html ------*/





/*------------------------------------

				Loader

------------------------------------*/









/*------------------------------------

			Common

------------------------------------*/

.Block {

    display: block;

}

.PcBlock {

    display: block;

}

.SpBlock {

    display: none;

}

.PcNone {

    display: none;

}



.SpNone{

    display: block;

}

@media screen and (max-width: 781px) {

.SpBlock {

    display: block;

}

.PcNone {

    display: block;

}

.PcBlock {

    display: inline;

}

.SpNone{

    display: none;

}

}







/*------------------------------------

			Contans

------------------------------------*/

.NavBox{

    background: #000000;

    width: 100%;

    box-sizing: border-box;

    transition: .2s;

}

.NavBox ul {

    display: flex;

    justify-content: center;

    align-items: center;

    padding: 10px;

}

.NavBox ul .Logo{

	margin-right: auto;

    width: 130px;

    margin-bottom: -5px;

}

.NavBox ul li a{

    color: #ffffff;

    margin-left: 10px;

    margin-right: 10px;

    display: block;

    font-size: 15px;

}

.Main{

    background-image: url(../images/mv.jpg);

    background-size: cover;

    background-repeat: no-repeat;

    background-position: center;

    background-attachment: fixed;

}



.MvBox {

    background-image: url(../images/mv.jpg);

    background-size: cover;

    background-repeat: no-repeat;

    background-position: center;

    height: 580px;

    display: flex;

    justify-content: center;

    align-items: center;

    text-align: center;

    color: #ffffff;

    background-attachment: fixed;

}

.MvText{

    font-family: 游明朝体, YuMincho, "Yu Mincho", serif;

    font-size: 40px;

    line-height: 1.3;

    position: relative;

    font-weight: bold;

	z-index:1;

}

.MvText:after {

    content: "";

    position: absolute;

    background: rgba(0, 0, 0, 0.5);

    height: 100%;

    width: 100%;

    margin: auto;

    top: -12px;

    left: -12px;

    right: -12px;

    bottom: -12px;

    z-index: -1;

    opacity: 0.3;

    filter: blur(22px);

    overflow: hidden;

}



.clone-nav {

  position: fixed;

  top: 0;

  left: 0;

  z-index: 2;

  width: 100%;

  transition: .2s;

  transform: translateY(-100%);

}

.is-show {

  transform: translateY(0);

}

.is-show .NavBox {

    background: rgba(0, 0, 0, 0.75);

    width: 100%;

    box-sizing: border-box;

    transition: .2s;

}

.Section02 {

    background: #ffffff;

    width: 100%;

    box-sizing: border-box;

    padding-top: 70px;

    padding-bottom: 70px;

	position:relative;

}

.CatTitleBg {

    background: url(../images/bglogo.png);

    background-repeat: no-repeat;

    background-size: cover;

    background-position: center;

    width: 150px;

    height: 150px;

    position: absolute;

    top: 25px;

    left: 0;

    right: 0;

    margin: auto;

    opacity: 0.1;

}

.MegaMenuBox {

    max-width: 980px;

    margin: auto;

}

.MegaMenuBox ul {

    display: flex;

    flex-wrap: wrap;

}

.MegaMenuBox ul li {

    width: 50%;

/*

	margin-top:10px;

    margin-bottom: 10px;

    padding-left: 10px;

    padding-right: 10px;

*/

}

.FlexBox {

    display: flex;

    background: #ffffff;

}

.FlexBox > div {

	width:50%;

}

.FlexBox .Image img {

	display: block;

    width: 100%;

}

.FlexBox .Detail {

    padding: 15px;

    line-height: 1.5;

    font-size: 15px;

    display: flex;

    flex-wrap: wrap;

    justify-content: center;

}

.FlexBox .Image.Order2 {

    order: 1;

}

.FlexBox .Detail .Title {

    font-family: 游明朝体, YuMincho, "Yu Mincho", serif;

    font-size: 22px;

    font-weight: bold;

    padding-top: 10px;

    padding-bottom: 15px;

    text-align: center;

}

.FlexBox .Detail .Link {

    margin-top: auto;

}

.FlexBox .Detail .Link a{

    font-size: 14px;

    color: #666666;

    text-align: center;

    display: block;

    width: 160px;

    margin: auto;

    line-height: 1;

    border: solid 1px #666666;

    padding: 10px;

    margin-bottom: 10px;

    border-radius: 3px;

	position:relative;

}

.FlexBox .Detail .Link a:after {

    content: "";

    width: 8px;

    height: 8px;

    border: 0px;

    border-top: solid 1px #666666;

    border-right: solid 1px #666666;

    -ms-transform: rotate(45deg);

    -webkit-transform: rotate(45deg);

    transform: rotate(45deg);

    position: absolute;

    top: 50%;

    right: 18px;

    margin-top: -4px;

}

.Section.Section03{

    background: #f9f9f9;

    width: 100%;

    box-sizing: border-box;

    padding-top: 70px;

    padding-bottom: 70px;

}

.Section .CatTitle {

    text-align: center;

    font-family: 游明朝体, YuMincho, "Yu Mincho", serif;

    font-size: 30px;

    font-weight: bold;

    line-height: 1;

    letter-spacing: 0.07em;

	margin-bottom: 60px;

    padding-top: 20px;

}

.Section .CatTitle span.CatTitleSmall {

    display: block;

    font-size: 18px;

}

.Section .SubCatTitle{

    text-align: center;

    font-size: 27px;

    font-family: 游明朝体, YuMincho, "Yu Mincho", serif;

    padding-bottom: 25px;

    line-height: 1.5;

    font-weight: bold;

}

.Section .TextCenter {

    text-align: center;

    font-size: 16px;

    line-height: 1.7;

}

.BusinessContentsBox{

    max-width: 880px;

    margin: auto;

    margin-bottom: 40px;

    display: flex;

    justify-content: center;

}

.BusinessContentsBox .FlexLeft {

    width: 30%;

    background: #182347;

    color: #ffffff;

    font-size: 15px;

    line-height: 1.5;

    padding: 20px;

    display: flex;

    flex-wrap: wrap;

    align-items: center;

    justify-content: center;

	position:relative;

}

.BusinessContentsBox .FlexLeft .Title {

    text-align: center;

    font-family: 游明朝体, YuMincho, "Yu Mincho", serif;

    font-weight: bold;

    font-size: 20px;

    padding-bottom: 20px;

}

.BusinessContentsBox .FlexRight {

    width: 70%;

}

.BusinessContentsBox .FlexRight .Image {


    background-position: 50% 10%;

    background-repeat: no-repeat;

    background-size: cover;

    height: 100%;

    min-height: 300px;

    display: block;

    position: relative;

    overflow: hidden;

}

.BusinessContentsBox .FlexRight .Image.ImageBg01{

    background-image: url(../images/business1.jpg);

}

.BusinessContentsBox .FlexRight .Image.ImageBg02{

    background-image: url(../images/business2.jpg);

}

.BusinessContentsBox .FlexRight .Image.ImageBg03{

    background-image: url(../images/business3.jpg);

}

.BusinessContentsBox .FlexLeft:after {



    position: absolute;

    top: 7%;

    background-repeat: no-repeat;

    background-size: 140px;

    background-position: 50% 0%;

    opacity: 0.2;

    width: 100%;

    height: 200px;

}

.BusinessContentsBox .FlexRight .Image .More {

    width: 100%;

    background: rgba(24, 36, 70, 0.6);

    transform: translateY(100%);

    position: absolute;

    bottom: 0;

    color: #ffffff;

    padding: 10px;

    text-align: right;

    transition: .2s;

    padding-right: 30px;

}

.BusinessContentsBox:hover .FlexRight .Image .More{

    transform: translateY(0);

    transition: .2s;

}

span.ArrowRight {

    width: 8px;

    height: 8px;

    border: 0px;

    border-top: solid 1px #ffffff;

    border-right: solid 1px #ffffff;

    -ms-transform: rotate(45deg);

    -webkit-transform: rotate(45deg);

    transform: rotate(45deg);

    position: absolute;

    top: 50%;

    right: 16px;

    margin-top: -4px;

}

.Footer {

    width: 100%;

    background: #000000;

    margin-top: 60px;

}

.FooterBox {

    background: #000000;

    color: #ffffff;

    padding: 20px;

    padding-top: 60px;

    display: flex;

    justify-content: center;

    max-width: 1000px;

    margin: auto;

}

.FooterBoxLeft {

    width: 40%;

}

.FooterBoxRight {

    width: 70%;

    padding-left: 120px;

}

.Copyright {

    background: #000000;

    text-align: center;

    color: #ffffff;

    padding-bottom: 10px;

    padding-top: 50px;

    font-size: 13px;

}

.FooterBoxLeftLine .Add {

    font-size: 14px;

    line-height: 1.5;

}

.FooterBoxLeftLine img{

    display: block;

    width: 100%;

    max-width: 160px;

    margin-bottom: 40px;

}

.FooterBoxRight ul{

    display: flex;

    flex-wrap: wrap;

}

.FooterBoxRight ul li{

    width: 33.333%;

}

.FooterBoxRight ul li a {

    color: #ffffff;

    display: block;

    font-size: 14px;

}

.NavToggle {

    display: none;

}







/*------------------------------------

			Else

------------------------------------*/

.Main.Else{

    background-image: none;

}

.ElsePage001,

.ElsePage002,

.ElsePage003,

.ElsePage004,

.ElsePage005{

    padding-top: 40px;

    padding-bottom: 40px;

    margin: auto;

    max-width: 860px;

    padding-left: 10px;

    padding-right: 10px;

    box-sizing: border-box;

}

.Section .CatTitle{

	position:relative;

}

.Section .CatTitle:after {

    content: "";

    position: absolute;

    left: 0;

    right: 0;

    bottom: -14px;

    margin: auto;

    height: 2px;

    width: 36px;

    background: #666666;

}



/*------------------------------------

			Business

------------------------------------*/

.ImageOneLine {

    max-width: 860px;

    margin: auto;

    padding-top: 20px;

    padding-bottom: 20px;

    padding-left: 10px;

    padding-right: 10px;

    box-sizing: border-box;

}

.ImageOneLine img {

    display: block;

    width: 100%;

}

.Color01{

    color: #932a23!important;

}

.ElseTitle {

    font-size: 23px;

    background: #1a5574;

    color: #ffffff;

    padding: 10px;

    margin-top: 20px;

    margin-bottom: 20px;

    font-family: 游明朝体, YuMincho, "Yu Mincho", serif;

}

.FlexBoxTwoLine {

    display: flex;

    padding-left: 10px;

    padding-right: 10px;

    padding-bottom: 30px;

    padding-top: 20px;

}

.FlexBoxTwoLineLeft{

    width: 65%;

    padding-right: 25px;

}

.FlexBoxTwoLineRight{

    width: 35%;

}

.FlexBoxTwoLineLeft .SubTitle,

.FlexBoxOneLine .SubTitle {

    font-size: 23px;

    font-weight: bold;

    padding-bottom: 10px;

    line-height: 1.5;

    padding-top: 10px;

    font-family: 游明朝体, YuMincho, "Yu Mincho", serif;

    font-weight: bold;

}

.FlexBoxTwoLineLeft .Text,

.FlexBoxOneLine .Text{

    line-height: 1.5;

    font-size: 16px;

}

.FlexBoxTwoLineRight img{

    display: block;

    width: 100%;

}

.FlexBoxOneLine{

    padding-left: 10px;

    padding-right: 10px;

    padding-bottom: 30px;

    padding-top: 20px;

}

.SubCatTitle .Space01 {

    display: block;

    margin-left: -65px;

    letter-spacing: -0.04em;

    line-height: 1.4;

}

.SubCatTitle .Space02 {

    display: block;

    margin-right: -50px;

    line-height: 1.4;

}

.SubCatTitle .Space03 {

    margin-right: -170px;

    display: block;

    letter-spacing: -0.02em;

    line-height: 1.4;

}





/*------------------------------------

			Company

------------------------------------*/

.Company {

    padding-left: 10px;

    padding-right: 10px;

    max-width: 680px;

    margin: auto;

    margin-top: 40px;

}

.Company table tr{

	border: #1a5573 solid 1px;

}



.Company table tr td:first-child {

    font-size: 16px;

    line-height: 1.5;

    width: 170px;

    padding: 10px;

    background: #006294d9;

    color: #ffffff;

}

.Company table tr td:last-child{

    font-size: 16px;

    line-height: 1.5;

    padding: 10px;

}

.Map {

    margin-top: 40px;

}

.MapTextBox {

    padding-left: 10px;

    padding-right: 10px;

    box-sizing: border-box;

    padding-top: 10px;

    padding-bottom: 40px;

}

.MapTextBox table tr td{

    font-size: 16px;

    line-height: 1.5;

    padding: 10px;

}

.MapTextBox table tr td.Name {

    color: #1a5573;

    font-weight: bold;

    font-size: 20px;

}







/*------------------------------------

			Company

------------------------------------*/

.ElsePage002 .Text {

    font-size: 16px;

    line-height: 1.5;

}

.FormContent {

    padding-top: 50px;

    padding-bottom: 50px;

    max-width: 780px;

    margin: auto;

}

.Name.Line {

    font-weight: bold;

}

.Line {

    line-height: 1.5;

    border-bottom: dotted 1px #333333;

    padding-bottom: 5px;

    margin-bottom: 5px;

    display: block;

    padding-left: 10px;

    padding-right: 10px;

}

.TelBox {

    max-width: 280px;

    margin: auto;

    margin-top: 30px;

}

label {

    display: flex;

    align-items: center;

}

label span {

    font-size: 12px;

    vertical-align: middle;

    display: inline-block;

    margin-left: auto;

    margin-right: 40px;

    background: #932a23;

    color: #ffffff;

    padding: 10px;

    padding-top: 7px;

    padding-bottom: 7px;

    line-height: 1;

    border-radius: 50px;

}

.FormContent table {

	width:100%;

	table-layout: fixed;

}

.FormContent table tr td {

    text-align: left;

    padding-top: 5px;

    padding-bottom: 5px;

}

.FormContent table tr td:first-child{

    width: 250px;

}

.FormContent table tr td.center_submit {

    text-align: center;

}

.FormContent table tr td.TopWord {

    vertical-align: top;

    padding-top: 10px;

}

input[type="text"], input[type="password"], textarea, select, input[type="url"], input[type="date"], input[type=submit], input[type=file], input[type=checkbox], input[type="email"], input[type="tel"] {

    outline: none;

}

.FormContent input[type="text"] {

    color: #333;

    position: relative;

    height: 2.2rem;

    border: 1px solid #9e9e9e;

    -webkit-border-radius: 2px;

    -moz-border-radius: 2px;

    border-radius: 2px;

    -webkit-box-sizing: border-box;

    -moz-box-sizing: border-box;

    box-sizing: border-box;

    font-size: 14px;

    padding-left: 5px;

    padding-right: 5px;

    margin-right: 10px;

    margin-bottom: 4px;

    width: 90%;

    -webkit-appearance: none;

    -webkit-box-shadow: inset 0 0px 0px rgba(0,0,0,0);

    		box-shadow:inset 0 0px 0px rgba(0,0,0,0);

    -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;

    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;

    		transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;

}

.FormContent textarea {

    color: #333;

    background: #fff;

    border: 1px solid #9e9e9e;

    border-radius: 3px;

    -webkit-box-sizing: border-box;

    -moz-box-sizing: border-box;

    box-sizing: border-box;

    padding-left: 5px;

    padding-right: 5px;

    margin-right: 10px;

    margin-bottom: 4px;

    width: 90%;

    font-size: 100%;

    -webkit-appearance: none;

}

.error-form{

    border: solid 1px #f56161!important;

}

.error{

    font-size: 12px;

    color: #f56161;

}

button[type="submit"] {

    overflow: visible;

    max-width: 1000px;

    min-width: 280px;

    margin-left: auto;

    margin-right: auto;

    text-align: center;

    height: 52px;

    padding: 0 3px;

    -webkit-appearance: none;

    background-color: #ffffff;

    color: #3f3f3f;

    border-style: none;

    font-size: 15px;

    font-weight: bold;

    -webkit-border-radius: 3px;

    -moz-border-radius: 3px;

    border-radius: 3px;

    margin-top: 12px;

    border: 1px solid #3f3f3f;

	cursor:pointer;

	box-sizing: border-box;

}



.Back{

    overflow: visible;

    max-width: 1000px;

    min-width: 280px;

    margin-left: auto;

    margin-right: auto;

    text-align: center;

    height: 52px;

    padding: 0 3px;

    -webkit-appearance: none;

    background-color: #ffffff;

    color: #3f3f3f;

    border-style: none;

    font-size: 15px;

    font-weight: bold;

    -webkit-border-radius: 3px;

    -moz-border-radius: 3px;

    border-radius: 3px;

    margin-top: 12px;

    border: 1px solid #3f3f3f;

	cursor:pointer;

	box-sizing: border-box;

}

button[type="submit"].Send{

	background-color: #3f3f3f;

    color: #ffffff;

    vertical-align: bottom;

	margin-left:15px;

}

.FormContent.Confirm table tr{

    border-bottom: solid 1px #666666;

}
.FormContent.Confirm table tr:last-child{

    border-bottom: none;

}

@media screen and (max-width: 971px){
.Main.Else,.Main {
    padding-top: 50px;
}
.PcMenu li{

    display: none;

}

.PcMenu li.Logo{

    display: block;

}

.NavToggle {

    display: block;

    position: absolute;

    right: 32px;

    top: 18px;

    width: 48px;

    height: 30px;

    cursor: pointer;

    padding: 0 10px;

    z-index: 999999;

    -webkit-tap-highlight-color: rgba(0,0,0,0);

}

.NavToggle .NavToggleBox {

    position: relative;

}

.NavToggle span {

    display: block;

    position: absolute;

    height: 2px;

    width: 100%;

    background: #fff;

    left: 0;

    zoom: 1;

    -webkit-transition: .35s ease-in-out;

    transition: .35s ease-in-out;

}

.NavToggle span:nth-child(1) {

    top: 0;

}

.NavToggle span:nth-child(2) {

    top: 8px;

}

.NavToggle span:nth-child(3) {

    top: 16px;

}
.NavBox {
    z-index: 99999;
    position: fixed;
}
.Open .NavToggle span:nth-child(1) {

    top: 9px;

    -webkit-transform: rotate(-135deg);

    transform: rotate(-135deg);

    zoom: 1;

    background: #fff;

}

.Open .NavToggle span:nth-child(2) {

    width: 0;

    left: 50%;

}

.Open .NavToggle span:nth-child(3) {

    top: 9px;

    -webkit-transform: rotate(135deg);

    transform: rotate(135deg);

    zoom: 1;

    background: #fff;

}

.GlobalNav {

    position: fixed;

    display: table;

    vertical-align: middle;

    color: #000;
    top: 0;
    left: 0;

    height: 100%;

    width: 100%;

    text-align: center;

    font-size: 16px;

    z-index: -1;
	display:none;

}
.Open .GlobalNav {
    justify-content: center;
    align-items: center;
    z-index: 9999;
	display:block;
    display: flex;
}
.Open .GlobalNav ul {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    flex-wrap: wrap;
}
.Open .GlobalNav ul li {
    width: 100%;
    padding: 5%;
}
.Open .NavBox ul li a {
    color: #101010;
    margin-left: 10px;
    margin-right: 10px;
    display: block;
    font-size: 20px;
}
.Open .NavToggle span {
    background: #000!important;
}
.Open .NavToggle .NavToggleBox,.Open .clone-nav.is-show .NavToggle .NavToggleBox{
    z-index: 99999;
}
.clone-nav {
    display: none!important;
}
.NavBg {

    overflow: hidden;

    width: 0;

    height: 0;

    position: fixed;

    top: 0;

    right: 0;

    bottom: 0;

    z-index: 2;

    background-color: rgba(255, 255, 255, 0.95);

    opacity: 0;

    -webkit-transform: translate3d(0,0,-50px);

    transform: translate3d(0,0,-50px);

    -webkit-transition-duration: .6s;

    transition-duration: .6s;

    -webkit-transition-timing-function: cubic-bezier(.075,.82,.165,1);

    transition-timing-function: cubic-bezier(.075,.82,.165,1);

}
.Open .NavBg{
    z-index: 999;
    width: 100%;
    opacity: 1;
    height: 100%;
}
.clone-nav .GlobalNav,.clone-nav .NavBg{
    display: none;
}

.MvBox {

    height: 480px;

}

.MvText {

    font-size: 35px;

}

.MegaMenuBox ul li {

    width: 100%;

    max-width: 580px;

    margin: auto;

}

.FlexBox .Image.OrderSp1{

    order: 2;

}

.FlexBox .Image.OrderSp2 {

    order: 0;

}

.FooterBox {

    flex-wrap: wrap;

}

.FooterBoxLeft {

    width: 100%;

}

.FooterBoxRight {

    width: 100%;

    padding-left: 0;

    padding-top: 40px;

}

}

@media screen and (max-width: 521px){

.MvText {
    font-size: 22px;
    letter-spacing: -0.05em;
    padding-left: 10px;
    padding-right: 10px;
}
.Section .CatTitle {
    font-size: 25px;
}
.Section .SubCatTitle {
    font-size: 22px;
}
.Section .TextCenter {
    font-size: 15px;
}
.MvBox {

    height: 360px;

    background-attachment: scroll;

}

.NavToggle {

    display: block;

    position: absolute;

    right: 10px;

    top: 18px;

    width: 48px;

    height: 30px;

    cursor: pointer;

    padding: 0 10px;

    z-index: 999999;

    -webkit-tap-highlight-color: rgba(0,0,0,0);

}

.MegaMenuBox ul li {

    padding-top: 2%;

    padding-bottom: 2%;

}

.FlexBox {

    flex-wrap: wrap;

}

.FlexBox > div {

    width: 100%;

}

.FlexBox .Image {

    height: 160px;

    overflow: hidden;

}

.FlexBox .Detail .Title {

font-size: 15px;

    line-height: 1.3;

    padding-bottom: 20px;

}

.FlexBox .Detail .Text {

    font-size: 14px;

    display: none;

}

.FlexBox .Detail .Link {

    margin-top: auto;

}

.FlexBox .Image.OrderSp1 {

    order: 0;

}

.FlexBox .Image.Order2 {

    order: 0;

}

.BusinessContentsBox {

    flex-wrap: wrap;

}

.BusinessContentsBox .FlexLeft{

    width: 100%;

    order: 2;

}

.BusinessContentsBox .FlexRight {

    width: 100%;

}

.Section.Section03 .CatTitle {

    font-size: 25px;

    padding-bottom: 0;

    padding-top: 20px;

}

.Section.Section03 {

    padding-top: 40px;

    padding-bottom: 40px;

}

.Section.Section03 .CatTitle span {

    display: block;

    font-size: 16px;

}

.BusinessContentsBox .FlexRight .Image {

    min-height: 180px;

}

.MegaMenuBox ul li {

    width: 50%;

}

.MegaMenuBox ul li {

    padding-top: 2%;

    padding-bottom: 2%;

	padding:1%;

}

.FlexBox .Detail .Link a {

    font-size: 12px;

    width: 130px;

}

.FooterBoxLeftLine img {

    display: block;

    width: 100%;

    max-width: 110px;

    margin: auto;

    margin-bottom: 30px;

}

.FooterBoxLeftLine .Add {

    font-size: 13px;

    line-height: 1.5;

    text-align: center;

    color: #e2e2e2;

}

.FooterBoxRight ul li {

    width: 100%;

    border-bottom: solid 1px #e2e2e2;

}

.FooterBox {

    padding: 0;

    padding-top: 60px;

}

.FooterBoxRight ul li a {

    color: #e2e2e2;

    font-size: 13px;

    padding-left: 4%;

    padding-right: 4%;

    padding-top: 5px;

    padding-bottom: 5px;

	position:relative;

}

.FooterBoxRight ul li a:after {

content: "";

    width: 8px;

    height: 8px;

    border: 0px;

    border-top: solid 1px #666666;

    border-right: solid 1px #666666;

    -ms-transform: rotate(45deg);

    -webkit-transform: rotate(45deg);

    transform: rotate(45deg);

    position: absolute;

    top: 50%;

    right: 18px;

    margin-top: -4px;

}

.Copyright {

    color: #e2e2e2;

    padding-top: 30px;

    font-size: 12px;

}

.Section02 {

    padding: 10px;

    padding-top: 40px;

    padding-bottom: 40px;

}

.Section.Section03 {

    padding-top: 30px;

    padding-bottom: 30px;

}

.FlexBoxTwoLine {

    flex-wrap: wrap;

    padding-left: 10px;

    padding-right: 10px;

    padding-bottom: 30px;

    padding-top: 20px;

}

.FlexBoxTwoLineLeft{

    width: 100%;

    padding-right: 25px;

}

.FlexBoxTwoLineRight{

    width: 100%;

}
.ElseTitle {
    font-size: 18px;
}
.Company table tr td:first-child {
    font-size: 15px;
    width: 100%;
    display: block;
}
.Company table tr td:last-child {
    font-size: 15px;
    width: 100%;
    display: block;
}
.ElsePage001, .ElsePage002, .ElsePage003, .ElsePage004, .ElsePage005 {
    padding-top: 40px;
    padding-bottom: 20px;
}
.MapTextBox table tr td {
    font-size: 15px;
}
.Footer {
    margin-top: 40px;
}
.FormContent table tr td {
    display: block;
    width: 100%;
}
.FormContent table tr td:first-child {
    width: 100%;
}
.FormContent input[type="text"] {
    margin-right: 0;
    width: 100%;
}
.FormContent textarea {
    margin-right: 0;
    width: 100%;
}
label span {
    margin-right: 5px;
}
.ElsePage002 .Text {
    font-size: 15px;
}
.FlexBoxTwoLineRight {
    width: 100%;
    padding-top: 15px;
}
.ElseTitle {
    margin-bottom: 0;
}
}



