@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap');

/* 
 default Style [
----------------------------------------------------------- */
html
  {
	height:100%;
	margin-bottom:1px;
	text-align: center;
	overflow-y:scroll;
}

* {
  box-sizing: border-box;
}

main {
  display: block;
  }

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,p,blockquote,th,td,figure {
margin: 0;
padding: 0;
border: none;
list-style: none;
font-size: 16px;
}

h1,h2,h3,h4,h5,h6 {
	font-weight:normal;
    transform: rotate(.03deg);
}

p {
	margin: 0;
	color: #1F1F1F;
}

ol,ul {
	list-style:none;
}

ol,ul li {
	list-style: none;
	text-align: left;
}

img {
    border: 0;
    vertical-align: top;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

caption,th {
	text-align:left;
}

address,caption,cite,code,dfn,em,strong,th,var {
	font-style:normal;
}

a {
    overflow: hidden;
    cursor: pointer;
    text-decoration: none;
}

.red {
	color: #F00;
	font-weight: normal;
	}
	
form {
	margin: 0px;
	padding: 0px;
	}
    
input[type="submit"]{
-webkit-appearance: none;
}
	
/**** Clearfix ****/
nav .panel:after, nav#mainNav:after, .newsTitle:after, .bg:after,.post:after, ul.post li:after,nav#mainNav .inner:after{content:""; display: table;clear: both;}
nav .panel,nav#mainNav,.newsTitle,.bg, .post, ul.post li,nav#mainNav .inner{zoom: 1;}

/*
 Base Link Color [
----------------------------------------------------------- */
a {
	color: #000000;
    text-decoration-skip-ink: none;
}

a:hover {
    text-decoration: none;
    color: #999999;
}

a img,
a {
	-webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
		 -o-transition: 0.3s ease-in-out;
		 	transition: 0.3s ease-in-out;
}

a img {
-webkit-backface-visibility: hidden; /* 追加 */
backface-visibility: hidden; /* 追加 */
}


a:hover img {
	opacity: 0.6;
	filter: alpha(opacity=60);
}


/* iOSでのデフォルトスタイルをリセット */
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;
}

/*アニメーション要素のスタイル*/
.animation{
	opacity : 0;
	visibility: hidden;
	transition: 1.3s;
	transform: translateY(100px);
}
/*アニメーション要素までスクロールした時のスタイル*/
.active{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_

パソコン向けスタイルおよび共通スタイルの指定

/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

/*==========================================
 body
===========================================*/
body {
    min-width: 100%;
    text-align: center;
    background-color: #FFFFFF;
    width: 100%;
    font-family:'Noto Sans JP', "游ゴシック体", "Yu Gothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
}

.spImg {
    display: none;
}

.Toggle{display:none;}

.wow:first-child {
      /*visibility: hidden;*/
    }
    
.spbr {
    display: none;
}

.tbImg {
    display: none;
}

/*==========================================
 ヘッダーのスタイル
===========================================*/
#headerTop {
max-width: 1080px;
width: calc(100% - 2em);
margin-left: auto;
margin-right: auto;
	}
    
#headerTop-block {
display: flex;
justify-content: space-between;
align-items: flex-end;
}

#headerInfo {
    display: flex;
    margin-bottom: 8px;
    align-items: center;
}
    
#tel a {
    font-family: fot-udkakugo-large-pr6n, sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 1.375em;
    display: flex;
    align-items: center;
}

#tel a img {
    margin-right: 10px;   
}

#tel {
    text-align: right;
    line-height: 1;
}

#tel span {
    font-size: 0.8em;
}

.contact {
    font-size: 1.125em;
    margin-left: 24px;
    font-weight: bold;
}

.contact span {
    background-image: url(images/mail.png);
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 38px;
}

.line {
    font-size: 1.125em;
    margin-left: 11px;
        font-weight: bold;
}

.line span {
    background-image: url(images/line.png);
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 60px;
    padding-top: 5px;
    padding-bottom: 5px;
}

.contact a {
    background-color: #005ae0;
    padding-top: 15px;
    padding-right: 20px;
    padding-bottom: 15px;
    padding-left: 20px;
    display: inline-block;
    width: 195px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-b　x;
    box-sizing: border-box;
    text-align: center;
    color: #FFFFFF;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}
.contact a:hover {
    background-color: #F958A0;
}

.line a {
    color: #FFFFFF;
    text-align: center;
    width: 195px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #00B900;
        padding-top: 15px;
    padding-right: 20px;
    padding-bottom: 15px;
    padding-left: 20px;
     display: inline-block; 
     border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;

}

.line a:hover {
    background-color: #0F920F;
}

#headerNavi1 {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-top: 7px;
     margin-bottom: 20px;
}

#headerNavi1 li {
    background-image: url(images/line_ber.png);
    background-repeat: no-repeat;
    background-position: right center;
}

#headerNavi1 li:last-child {
    background-image: none;
}
#headerNavi1 li a {
    padding-left: 15px;
    padding-top: 15px;
    padding-right: 15px;
    padding-bottom: 15px;
}

#headerNavi1 li:last-child a {
        padding-right: 0px;
}

#submenu,
#spinfo {
    display: none;
}

#global {
    background-color: rgb(35 184 188 / 41%);
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 30px;
    padding-bottom: 30px;
}

#global li {
    background-image: url(images/line_ber.png);
    background-repeat: no-repeat;
    background-position: right center;
    font-weight: bold;
}

#global li:last-child {
    background-image: none;
}
#global li a {
    padding: 15px 18px;
}

#global li:last-child a {
        padding-right: 0px;
}

ul#global li.hasChildren {
    position: relative;
}

ul#global li.hasChildren ul {
    display: none;
    position: absolute;
    background: #ddd;
	top: 38px;
    left: 20px;
    width: 100%;
}

ul#global li.hasChildren:hover ul {
    display: block;
	transition : 1s;
	z-index: 1;
}

ul#global li.hasChildren ul li a {
    padding: 0;
    text-align: left;
    padding: 15px;
    display: block;
}

/*==========================================
 フッターのスタイル
===========================================*/
fooer {
    position: relative;
}

#footerMenu {
    background: rgb(142,195,31);
    background: -moz-linear-gradient(90deg, #1a62ea69 0%, rgba(35,184,188,1) 100%);
    background: -webkit-linear-gradient(90deg, #1a62ea69 0%, rgba(35,184,188,1) 100%);
    background: linear-gradient(90deg, #1a62ea69 0%, rgba(35,184,188,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#8ec31f",endColorstr="#23b8bc",GradientType=1);
    padding-top: 58px;
    padding-bottom: 58px;
    font-size: 1.375em;
    font-weight: bold;
    -webkit-box-shadow: 3px 3px 6px hsla(0,0%,0%,0.15);
    box-shadow: 3px 3px 6px hsla(0,0%,0%,0.15);
}

#footerMenu a {
    text-align: center;
}

#footerMenu a:hover {
    color: #FFFFFF;
}

#page-top {
    position: fixed;
    right: 30px;
    bottom:177px;
	z-index: 999;
}

#copy {
    padding-top: 25px;
    padding-bottom: 25px;
    display: flex;
    justify-content: center;
    align-items: center;
}

#copy img {
    margin-left: 4px;    
}

#copy a span {
    font-size: 0.7em;
    margin-top: 6px;
}

/*==========================================
Other
===========================================*/
.share {
max-width: 1080px;
width: calc(100% - 2em);
margin-left: auto;
margin-right: auto;
}

.as {
display: flex;
justify-content: space-between;
}

.as section {
    width: 48%;
}

#pNavi {
    max-width: 1080px;
    width: calc(100% - 2em);
    margin-left: auto;
    margin-right: auto;
    padding-top: 18px;
    padding-bottom: 52px;
    line-height: 1.7;
    text-align: left;
}

#pNavi a {
    text-decoration: underline;    
}

#pNavi a.post:after {
    display: inline;
}

#pNavi a:hover {
    text-decoration: none;
    color: #464646;
}

input.area_hidden {
    display: none;
}

.subTit {
    padding-top: 20px;
    padding-bottom: 20px;
}

p.noSearch {
    font-size: 2em;
    margin: 1em auto 2em;
    padding: 0;
    font-weight: 600;
    max-width: 1080px;
	width: calc(100% - 2em);
}

.tableStyle {
    max-width: 1080px;
    width: calc(100% - 2em);
    margin-left: auto;
    margin-right: auto;
    border-collapse: collapse;
    border: 1px solid #707070;
}

.tableStyle th {
    background-color: #FEEFD0;
    text-align: center;
    padding-top: 14px;
    padding-bottom: 14px;
    font-size: 1.125em;
    font-weight: normal;
    border-right: 1px solid #707070;
    border-bottom: 1px solid #707070;
    padding-left: 10px;
    padding-right: 10px;
}

.tableStyle th.sub1 {
    background-color: #FBDA93;
}

.tableStyle td {
    text-align: center;
    padding-left: 14px;
    padding-right: 14px;
            padding-top: 14px;
    padding-bottom: 14px;
        border-right: 1px solid #707070;
    border-bottom: 1px solid #707070;
        padding-left: 10px;
    padding-right: 10px;
}

.ex {
max-width: 1100px;
width: calc(100% - 2em);
margin-left: auto;
margin-right: auto;
display: flex;
flex-wrap:wrap;
}

.ex li {
    width: calc(100%/4 - 20px);
    margin-left: 10px;
    margin-right: 10px;
    margin-bottom: 40px;
}

.ex li img {
 	width: 100%;
    max-width: 100%;
    height: 23vw;
    max-height: 190px;
    text-align: center;
    object-fit: cover;
}

.ex li a {
    -webkit-box-shadow: 0px 3px 6px hsla(0,0%,0%,0.15);
    box-shadow: 0px 3px 6px hsla(0,0%,0%,0.15);
    display: block;
    border: 1px solid #FFFFFF;
}

.ex li a:hover {
    background-color: #F3F1F1;
        border: 1px solid #000;
}

.ex li a p {
    font-size: 0.938em;
    padding-top: 15px;
    padding-right: 15px;
    padding-bottom: 18px;
    padding-left: 15px;
    text-align: left;
}

.navigation {
    max-width: 100%;
    width: calc(100% - 2em);
    margin-left: auto;
    margin-right: auto;
    /*margin-top: -100px!important;*/
    margin-bottom: 80px!important;
    text-align: center;
}


.navigation2 {
    max-width: 100%;
    width: calc(100% - 2em);
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 80px!important;
    text-align: center;
}



/*=========
qa accordion
=========*/
.qa {
    max-width: 1080px;
    width: calc(100% - 2em);
    margin-left: auto;
    margin-right: auto;
    text-align: left;
}

.qa .accordion_area {}
.qa .accordion_area .accordion_one .ac_header,
.qa .accordion_area .accordion_two .ac_header {
    background-color: #ffffff;
    position: relative;
    z-index: +1;
    cursor: pointer;
    transition: .2s;
    margin-bottom: 25px;
}
.qa .accordion_area .accordion_one .ac_header:not(.open):hover,
.qa .accordion_area .accordion_two .ac_header:not(.open):hover {
  background-color: #fff;
}

.qa .accordion_area .accordion_one .ac_header .i_box, 
.qa .accordion_area .accordion_two .ac_header .i_box {
  position: absolute;
  top: 2em;
  right: 2rem;
  width: 20px;
  height: 20px;
  margin-top: -10px;
}
.qa .accordion_area .accordion_one .ac_header .i_box:before, .accordion_area .accordion_one .ac_header .i_box:after,
.qa .accordion_area .accordion_two .ac_header .i_box:before, .accordion_area .accordion_one .ac_header .i_box:after {
  position: absolute;
  content: "";
  margin: auto;
  box-sizing: border-box;
  vertical-align: middle;
}
.qa .accordion_area .accordion_one .ac_header .i_box:before,
.qa .accordion_area .accordion_two .ac_header .i_box:before {
  border-top: 2px solid #014897;
  width: 20px;
  height: 0;
  top: 0;
  bottom: 0;
  right: 0;
}
.qa .accordion_area .accordion_one .ac_header .i_box:after,
.qa .accordion_area .accordion_two .ac_header .i_box:after {
  border-left: 2px solid #014897;
  width: 0;
  height: 20px;
  top: 0;
  bottom: 0;
  right: 9px;
  transition: .3s;
}
.qa .accordion_area .accordion_one .ac_header.open .i_box:after,
.qa .accordion_area .accordion_two .ac_header.open .i_box:after {
  height: 0;
}
.qa .accordion_area .accordion_one .ac_inner,
.qa .accordion_area .accordion_two .ac_inner {
    display: none;
    box-sizing: border-box;
    background: #fff;
    padding-left: 88px;
    padding-right: 33px;
    padding-bottom: 80px;
}
.qa .accordion_area .accordion_one .ac_inner p,
.qa .accordion_area .accordion_two .ac_inner p {
    font-size: 1.125em;
    line-height: 1.7;
}



/*=========
faq
=========*/

.qa .p-faq__headinner {
  display: block;
  position: relative;
  line-height: 1.5;
}
.qa .p-faq__headinner p.p-faq__q-txt,
.qa .p-faq__headinner p.p-faq__a-txt {
      font-size: 1.250em;
    font-weight: bold;
    text-align: left;
}

.qa .p-faq__headinner p.p-faq__q-txt strong {
    background-color: #0450B4;
    color: #FFFFFF;
    padding-top: 15px;
    padding-bottom: 15px;
    display: inline-block;
    margin-right: 5px;
    margin-bottom: 5px;
    width: 60px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.qa .p-faq__headinner p.p-faq__q-txt span {
    background-color: #C2D5ED;
    color: #000000;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 23px;
    padding-right: 70px;
    margin-bottom: 5px;
    display: block;
    align-self: stretch;
    width: 100%;
}

.qa .p-faq__q-txt,
.qa .p-faq__a-txt,
.qa .p-faq__a-txt{
display: flex;
}

.qa .p-faq__headinner p.p-faq__a-txt strong {
    background-color: #EA6182;
    color: #FFFFFF;
    padding-top: 15px;
    padding-bottom: 15px;
    display: inline-block;
    margin-right: 5px;
    width: 60px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.qa .p-faq__headinner p.p-faq__a-txt span {
    background-color: #FAD9E1;
    color: #000000;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 23px;
    padding-right: 40px;
    display: block;
    align-self: stretch;
    width: 100%;
}

.qa .p-faq__bodyinner {
  display: block;
  padding-left: 35px;
  position: relative;
  line-height: 1.5;
}

.ihin {
    max-width: 1080px;
    width: calc(100% - 2em);
    margin-left: auto;
    margin-right: auto;
    text-align: left;
}

.ihin h3 {
    background-color: #0450B4;
    color: #FFFFFF;
    font-size: 1.563em;
    font-weight: bold;
    padding-top: 9px;
    padding-bottom: 9px;
    padding-left: 20px;
    padding-right: 20px;
    margin-bottom: 28px;
}

.ihin h3:nth-child(n + 2){
    margin-top: 40px;
}

.ihin p {
    font-size: 1.125em;
    line-height: 1.7;
    padding-bottom: 47px;
}

.ihin p:last-child {
    padding-bottom: 0px;
}

.rightImg {
    float: right;
    margin-left: 30px;
    margin-bottom: 30px;
    max-width: 436px;
width: 100%;
}

.rightImg img {
   	width: 100%;
	max-width: 100%;
	height: auto;
	width /***/: auto;
 	text-align: center;
}

.ab_list {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}

.a_list {
    max-width: 438px;
    width: 100%;
    margin-bottom: 0px;
}

.a_list figure {
    max-width: 438px;
    width: 100%;
}

.a_list figure img {
    	width: 100%;
	max-width: 100%;
	height: auto;
	width /***/: auto;
 	text-align: center;
}

.b_list {
    max-width: 538px;
    width: 100%;
    text-align: center;
}

.b_list .b_list_innr {
    background-color: #F8D62B;
    padding-bottom: 30px;
}

.a_list h3 {
    margin-top: 24px;
        background-color: #EEEEEE;
    font-size: 1.250em;
    font-weight: bold;
    padding-top: 10px;
    padding-right: 13px;
    padding-bottom: 10px;
    padding-left: 13px;
    margin-bottom: 8px;
}

.a_list p {
    font-size: 1.125em;
    margin-bottom: 38px;
    font-weight: 500;
    line-height: 1.7;
}

.b_list h2 {
    background-color: #FFFFFF;
    text-align: center;
    border: 10px solid #F08200;
}

.corpName {
    font-size: 1.750em;
    font-weight: bold;
    margin-bottom: 14px;
        max-width: 477px;
width: calc(100% - 2em);
margin-left: auto;
margin-right: auto;
}

.corptext {
    font-size: 1.125em;
    font-weight: bold;
    max-width: 477px;
width: calc(100% - 2em);
margin-left: auto;
margin-right: auto;
}

.orange a {
    max-width: 477px;
width: calc(100% - 2em);
margin-left: auto;
margin-right: auto;
    background-color: #F08200!important;
    display: block;
    text-align: center;
        padding-left: 20px;
    padding-right: 20px;
}

.orange a:hover {
    background-color: #78BC64!important;
}

.corpTel {
    max-width: 477px;
    width: calc(100% - 2em);
    margin-left: auto;
    margin-right: auto;
    margin-top: 15px;
    background-color: #F3F3F3;
    border: 1px solid #B8B8B8;
    padding-top: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
    padding-left: 20px;
}

.corpTel h3 {
    color: #547F40;
    font-size: 1.313em;
    font-weight: bold;
    margin-bottom: 10px;
}

.corpTel p {
    font-size: 2.188em;
    font-family: fot-udkakugo-large-pr6n, sans-serif;
    font-weight: 600;
    font-style: normal;
    line-height: 1;
        margin-bottom: 10px;
}

.green_tit {
    margin-top: 93px;
    background-color: #B7D971;
    font-size: 1.375em;
    font-weight: bold;
    padding-top: 9px;
    padding-bottom: 9px;
    padding-left: 20px;
    padding-right: 20px;
    margin-bottom: 28px;
}

.green_tit2 {
    margin-top: 93px;
    background-color: #BAE7D2;
    font-size: 1.375em;
    font-weight: bold;
    padding-top: 9px;
    padding-bottom: 9px;
    padding-left: 20px;
    padding-right: 20px;
    margin-bottom: 28px;
    text-align: left;
}

.blue_tit {
    margin-top: 93px;
    background-color: #99D1EF;
    font-size: 1.375em;
    font-weight: bold;
    padding-top: 9px;
    padding-bottom: 9px;
    padding-left: 20px;
    padding-right: 20px;
    margin-bottom: 28px;
}

.d_list {
display: inline-flex;
flex-wrap:wrap;
}

.d_list li {
    font-size: 1.063em;
    background-color: #F1F1F1;
    border-radius: 5px;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 20px;
    padding-right: 20px;
    margin-right: 10px;
    margin-bottom: 10px;
}

.fontStyle3 {
    font-size: 1.125em;
    line-height: 1.7;
}

.corpPrice {
display: flex;
justify-content: space-between;
}

.corpPrice table {
max-width: 422px;
width: 100% ;
}

.corpPrice section {
max-width: 551px;
width: 100% ;
}

.corpPrice table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #707070;
    align-self: baseline;
}

.corpPrice table th {
    background-color: #FEEFD0;
    text-align: center;
    padding-top: 14px;
    padding-bottom: 14px;
    font-size: 1.125em;
    font-weight: normal;
    border-right: 1px solid #707070;
    border-bottom: 1px solid #707070;
}

.corpPrice table th.sub1 {
    background-color: #FBDA93;
    text-align: left;
    padding-left: 14px;
    padding-right: 14px;
}

.corpPrice table th.sub2 {
    background-color: #FBDA93;
    padding-left: 14px;
    padding-right: 14px;
    width: 115px;
}

.corpPrice table td {
    text-align: left;
    padding-left: 14px;
    padding-right: 14px;
            padding-top: 14px;
    padding-bottom: 14px;
        border-right: 1px solid #707070;
    border-bottom: 1px solid #707070;
}

.corpPrice section h3 {
    background-color: #EEEEEE;
    font-size: 1.250em;
    font-weight: bold;
    padding-top: 10px;
    padding-right: 13px;
    padding-bottom: 10px;
    padding-left: 13px;
    margin-bottom: 12px;
}

.corpPrice section h3.hight {
    margin-top: 42px;
}

.corpAbout {
max-width: 100%;
width: calc(100% - 2em);
margin-left: auto;
margin-right: auto;
display: flex;
flex-wrap:wrap;
}

.corpAbout dt {
    font-size: 1.125em;
    font-weight: bold;
    width: 20%;
}

.corpAbout dd {
    width: calc(80% - 60px);
    font-size: 1.125em;
    border-left: 1px solid #707070;
    padding-left: 30px;
    margin-left: 30px;
    margin-bottom: 50px;
}

.kuchikomi {
max-width: 100%;
width: calc(100% - 2em);
margin-left: auto;
margin-right: auto;
}

.kuchikomi dl {
    margin-top: 30px;
    border: 1px solid #707070;
    padding-top: 35px;
    padding-right: 35px;
    padding-bottom: 35px;
    padding-left: 35px;
}

.kuchikomi dl dt {
    font-size: 1.125em;
    font-weight: bold;
    margin-bottom: 28px;
}

.kuchikomi dl dd {
    font-size: 1.125em;
    line-height: 1.7;
}

.fontStyle4 {
    font-size: 1.125em;
    font-weight: bold;
}

.staffMessage {
max-width: 100%;
width: calc(100% - 2em);
margin-left: auto;
margin-right: auto;
}

.staffVoice {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    margin-bottom: 60px;
}

.staffVoice figure {
    max-width: 350px;
    width: 100%;
}

.staffVoice figure img {
   	width: 100%;
	max-width: 100%;
	height: auto;
	width /***/: auto;
 	text-align: center;
}

.staffVoice section {
    max-width: 656px;
    width: 100%;
    text-align: left;
}

.staffVoice section h4 {
    font-size: 1.250em;
    font-weight: bold;
    border-bottom: 1px solid #707070;
    padding-bottom: 18px;
    margin-bottom: 25px;
}

.staffVoice section p {
    font-size: 1.125em;
    line-height: 1.7;
}

.tableStyle2 {
    max-width: 100%;
    width: calc(100% - 2em);
    margin-left: auto;
    margin-right: auto;
    border-collapse: collapse;
    border: 1px solid #707070;
}

.tableStyle2 th {
    background-color: #F2F2F2;
    text-align: left;
    padding-top: 14px;
    padding-bottom: 14px;
    font-size: 1.125em;
    font-weight: normal;
    border-right: 1px solid #707070;
    border-bottom: 1px solid #707070;
    padding-left: 20px;
    padding-right: 20px;
    width: 27%;
    vertical-align: top;
        font-size: 1.125em;
    line-height: 1.7;
}

.tableStyle2 td {
    text-align: left;
    padding-left: 14px;
    padding-right: 14px;
    padding-top: 14px;
    padding-bottom: 14px;
    border-right: 1px solid #707070;
    border-bottom: 1px solid #707070;
    padding-left: 20px;
    padding-right: 20px;
    vertical-align: top;
        font-size: 1.125em;
    line-height: 1.7;
}

.bottomHight {
    padding-bottom: 100px;
}

.layout {
max-width: 1080px;
width: calc(100% - 2em);
margin-left: auto;
margin-right: auto;
display: flex;
justify-content: space-between;
}

.left {
max-width: 790px;
width: 100%;
}

.right {
max-width: 240px;
width: 100%;
}

.titStyle {
    font-size: 1.875em;
    font-weight: bold;
    text-align: left;
    background-image: url(images/lineber.png);
    background-repeat: no-repeat;
    background-position: 0% bottom;
    background-size: 100% 4px;
    padding-bottom: 12px;
    margin-bottom: 13px;
}

.titCategory {
    font-size: 1.375em;
    font-weight: bold;
    text-align: left;
    margin-bottom: 37px;
}

.column {
    border-bottom: 2px dotted #C8C8C8;
    margin-bottom: 43px;
    padding-bottom: 30px;
    display: flex;
    justify-content: space-between;
    text-align: left;
}

.column figure {
max-width:173px;
width: 100% ;
}


.column figure img {
    width: 100%;
    max-width: 100%;
    height: 161px;
    width /***/: auto;
    text-align: center;
    object-fit: cover;
}

.column section {
max-width: 600px;
width: 100% ;
}

.column section h2 {
    font-size: 1.125em;
    line-height: 1.7;
    font-weight: bold;
    margin-bottom: 10px;
}

.column section h2 a:hover {
    text-decoration: underline;
}

.post-type-archive-faq .at-above-post-arch-page.addthis_tool,
.page-template-page-search .at-above-post-page.addthis_tool,
.post-type-archive-column .at-above-post-arch-page.addthis_tool {
    display: none!important;
}

.categoryLink {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-bottom: 10px;
    align-items: center;
}

.categoryLink li {
    margin-left: 12px;
    font-size: 0.875em;
    font-weight: bold;
    margin-top: 8px;
}

.categoryLink li a {
    background-color: #F1F1F1;
    border-radius: 5px;
    border: 1px solid #707070;
    line-height: 1.1;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 15px;
    padding-right: 15px;
    display: block;
}

.categoryLink li a:hover {
    background-color: #CAE7F7;
    color: #000000;
}

.column section p {
    font-size: 0.938em;
    line-height: 1.7;
    padding-bottom: 10px;
}

.column section aside {
    font-weight: bold;
        text-align: right;
}

.column section aside a {
    color: #FFFFFF;
    text-shadow: 0px 3px 6px hsla(0,0%,0%,0.16);
    background-color: #1a82ea;
    display: inline-block;
    padding-top: 8px;
    padding-bottom: 8px;
    padding-left: 30px;
    padding-right: 30px;
}

.column section aside a:hover {
    background-color: #744A03;
}

.right_subMenu {
    margin-bottom: 92px;
}

.right_subMenu h2 {
    font-size: 1.125em;
    font-weight: bold;
    text-align: center;
    background-color: #FFFFFF;
    border: 5px solid #1a82ea;
    padding-top: 10px;
    padding-right: 30px;
    padding-bottom: 10px;
    padding-left: 10px;
    margin-bottom: 19px;
}

.right_subMenu h2 span {
    background-image: url(images/mark.png);
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 45px;
    padding-top: 5px;
    padding-bottom: 5px;
}

.right_subMenu ul li {
    background-image: url(images/point.png);
    background-repeat: no-repeat;
    background-position: left top;
    padding-left: 18px;
    margin-bottom: 18px;
}

.right_subMenu ul li a {
    text-decoration: underline;
}

.right_subMenu ul li a:hover {
    text-decoration: none;
}

.right_subMenu p {
    font-size: 0.875em;
    text-align: right;
}

.right_subMenu p a {
    color: #015FEB;
    text-decoration: underline;
}

.right_subMenu p a:hover {
    color: #838383;
    text-decoration: none;
}

.dayLink {
display: flex;
justify-content:flex-end;
align-items: center;
flex-wrap:wrap;
}

.dayLink p {
    font-size: 0.938em;
}

.titStyle2 {
    font-size: 1.375em;
    background-color: #B7D971;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 17px;
    padding-bottom: 17px;
    text-align: left;
    font-weight: bold;
    margin-bottom: 10px;
    margin-top: 12px;
}

.cms {
    margin-top: 40px;
	padding-bottom: 45px;
	text-align: left;
}

.cms h2 {
    font-size: 1.375em;
    font-weight: bold;
    text-align: left;
    padding-bottom: 10px;
    border-bottom: 4px solid #B7D971;
    margin-bottom: 25px;
}

.cms p {
    line-height: 1.7;
    text-align: left;
    padding-bottom: 35px;
    font-size: 110%;
}

.formContent p {
    font-size: 110%;
}

.cms form p.privacy {
    text-align: center;
    margin-top: -20px;
}

.cms form p.privacy a{
	text-decoration: underline;
}

.cms form p.privacy a:hover{
	text-decoration: none;
}

.at-above-post-page.addthis_tool {
    text-align: right;
    margin: -20px 0 20px;
}
.at-above-post.addthis_tool {
    margin: -20px 0 20px;
    text-align: right;
}

.alignleft {
    float: left;
    max-width: 385px;
    width: 100%;
    margin-right: 25px;
    margin-bottom: 23px;
}

.aligneright {
    float: right;
    max-width: 385px;
    width: 100%;
    margin-left: 25px;
    margin-bottom: 23px;
}

.aligncenter {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
   margin-bottom: 23px;
   	width: 100%;
	max-width: 100%;
	height: auto;
	width /***/: auto;
 	text-align: center;
}

.cms #toc_container p.toc_title {
    text-align: left;
}

.cms #toc_container {
	padding: 20px;
	margin: 0 0 35px;
}

.first .mw_wp_form h2,
.cms h3 {
    margin-top: 50px;
    background-color: #E6E7E5;
    font-size: 1.313em;
    color: #000000;
    text-align: left;
    padding-top: 8px;
    padding-bottom: 8px!important;
    padding-left: 18px;
    padding-right: 18px;
    margin-bottom: 30px;
    font-weight: bold;
}

.cms h4,
.cms h5,
.cms h6 {
    margin-top: 50px;
    font-size: 1.188em;
    color: #000000;
    text-align: left;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 18px;
    padding-right: 18px;
    margin-bottom: 30px;
    font-weight: bold;
    border-top: 1px solid #111111;
    border-bottom: 1px solid #111111;
}

.cms ul {
    margin-bottom: 35px;
}

.cms ul li {
    background-image: url(images/point.png);
    background-repeat: no-repeat;
    background-position: left top;
    padding-left: 24px;
    line-height: 1.7;
    margin-bottom: 10px;
}

.cms ol {
    margin-bottom: 35px;
}

.cms ol li {
    line-height: 1.7;
    margin-bottom: 10px;
    list-style-type: decimal;
    list-style-position: outside;
    margin-left: 24px;
    padding-left: 8px;
}

.cms table {
    max-width: 100%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    border-collapse: collapse;
    border: 1px solid #707070;
    text-align: left;
    margin-bottom: 35px;
}

.cms table th {
    background-color: #EEF6DD;
    padding-top: 14px;
    padding-bottom: 14px;
    font-size: 1.125em;
    font-weight: normal;
    border-right: 1px solid #707070;
    border-bottom: 1px solid #707070;
    padding-left: 10px;
    padding-right: 10px;
    width: 28%;
    vertical-align: top;
}

.cms table td {
    padding-left: 14px;
    padding-right: 14px;
            padding-top: 14px;
    padding-bottom: 14px;
        border-right: 1px solid #707070;
    border-bottom: 1px solid #707070;
        padding-left: 10px;
    padding-right: 10px;
    vertical-align: top;
}

.cms blockquote {
    background-color: #F2F2F2;
    border: 1px solid #707070;
    max-width: 100%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
    padding-top: 40px;
    padding-right: 40px;
    padding-bottom: 40px;
    padding-left: 40px;
    margin-bottom: 35px;
    line-height: 1.7;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.cms .companyCatBlock {
    max-width: 1080px;
    width: calc(100% - 2em);
    margin-left: auto;
    margin-right: auto;
    background-color: #F1EFEF;
    padding-left: 35px;
    padding-right: 35px;
    padding-top: 24px;
    padding-bottom: 36px;
    margin-bottom: 126px;
    margin-bottom: 63px;
}

.cms .companyCatBlock h3{
	font-size: 1.250em;
    background-color: #B7D971;
    padding-top: 15px;
    padding-right: 4rem;
    padding-bottom: 15px;
	margin:0 0 20px;
    position: relative;
    z-index: +1;
    cursor: pointer;
    transition: .2s;
	text-align: left;
	padding-left: 25px;
	font-weight:600;
}
.cms .companyCatBlock p {
    margin: 0 0 1em 1em;
    padding: 0;
    color: #3d5708;
    font-weight: 600;
}
.cms .companyCatBlock .wsp-container ul{
    text-align: left;
	margin-bottom: 0;
}
.cms .companyCatBlock .wsp-container li{
	display: inline-block;
    text-align: left;
    background: none;
    padding-left: 10px;
    margin-bottom: 4px;
}
.cms .companyCatBlock .wsp-container li:after{
	content:'/';
    padding: 0 0 0 1em;
}

#columnStyle figure.columnTopImage,
#columnStyle figure.columnTopImage_2 {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2em;
}
#columnStyle figure.columnTopImage img{
    width:100%;
    height:25vw;
    object-fit:cover;
}

#columnStyle figure.columnTopImage_2 img{
    max-width:100%;
    height:auto;
}

.pageNavi {
    max-width: 100%;
    width: calc(100% - 80px);
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 145px;
}

.back {
    font-size: 1.250em;
    font-weight: bold;
}

.back a {
    background-image: url(images/left_yajirushi.png);
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 35px;
}

.next {
    font-size: 1.250em;
    font-weight: bold;
}

.next a {
    background-image: url(images/right_yajirushi.png);
    background-repeat: no-repeat;
    background-position: right center;
    padding-right: 35px;
}

.subTitle {
    font-size: 1.563em;
    font-weight: bold;
    text-align: left;
    padding-bottom: 10px;
    background-image: url(images/c_ber.png);
    background-repeat: repeat-x;
    background-position: left bottom;
    background-size: 100% 4px;
    margin-bottom: 30px;
}

.subList {
    margin-bottom: 60px;
    display: flex;
    flex-wrap:wrap;
}

.subList li {
    width: calc(100%/4 - 26px);
    margin-right: 13px;
    margin-left: 13px;
    margin-bottom: 25px;
    text-align: left;
}

.subList li a {
    text-align: left;
}

.subList li img {
    	width: 100%;
	max-width: 100%;
	height: auto;
	width /***/: auto;
 	text-align: center;
}

.subList li p {
    font-size: 0.938em;
    margin-top: 8px;
}

.wide {
    max-width: 997px!important;
    width: 100%;
    margin-top: 50px;
}

.qapage .p-faq__headinner p.p-faq__q-txt strong {
    background-color: #B7D971!important;
    color: #000000;
    align-self: flex-start;
    margin-top: 15px;
}

.qapage .p-faq__headinner p.p-faq__q-txt span {
    background-color: #FFF!important;
        padding-left: 15px!important;
}

.qapage .ac_header {
    border-bottom: 2px dotted #BFBFBF;
    padding-bottom: 10px;
}

.qapage .p-faq__headinner p.p-faq__a-txt strong {
    background-color: #B7D971!important;
}

.qapage .p-faq__headinner p.p-faq__q-txt span {
    padding-bottom: 0px!important;
    align-self: center!important;
}

.qapage .accordion_area .accordion_one .ac_inner,
.qapage .accordion_area .accordion_two .ac_inner {
    padding-left: 0px!important;
}

.qapage .p-faq__a-txt {
    font-size: 1.250em;
    font-weight: bold;
    text-align: left;
    margin-bottom: 20px;
}

.qapage p.p-faq__a-txt strong {
    background-color: #EA6182;
    color: #FFFFFF;
    padding-top: 15px;
    padding-bottom: 15px;
    display: inline-block;
    margin-right: 5px;
    width: 60px;
    display: inline-flex;
    justify-content: center;
    align-self: baseline;
}

.qapage p.p-faq__a-txt span {
    background-color: #FFF;
    padding-top: 0px;
    align-self: baseline;
    width: 100%;
    padding-left: 15px!important;
}

.qapage .p-faq__headinner p.p-faq__q-txt, .qapage .p-faq__headinner p.p-faq__a-txt {
    font-size: 1.250em;
    font-weight: normal!important;
}

.qapage .accordion_area .accordion_one .ac_inner p.p-faq__a-txt {
    font-size: 1.250em!important;
    font-weight: normal!important;
}

.qapage .ac_inner aside {
    padding-left: 70px;
    line-height: 1.7;
}
.qapage .accordion_area .accordion_one .ac_header .i_box,
.qapage .accordion_area .accordion_two .ac_header .i_box {
   margin-top: 0px!important;
}

.qapage p.a-faq__q-txt span {
    padding-left: 0px!important;
}

.qapage .accordion_area .accordion_one .ac_header .i_box,
.qapage .accordion_area .accordion_two .ac_header .i_box {
    right: 0rem!important;
}

.qapage .accordion_area .accordion_one .ac_header .i_box:before,
.qapage .accordion_area .accordion_two .ac_header .i_box:before {
    border-top: 2px solid #81B419!important;
}

.qapage .accordion_area .accordion_one .ac_header .i_box:after,
.qapage .accordion_area .accordion_two .ac_header .i_box:after {
    border-left: 2px solid #81B419!important;
}

.exBlock {
display: flex;
flex-wrap:wrap;
margin-bottom: 50px;
}

.exList {
    width: calc(100%/4 - 20px);
    margin-left: 10px;
    margin-right: 10px;
    margin-top: 30px;
    text-align: left;
    margin-bottom: 15px;
}

.exList figure img {
    width: 100%;
    max-width: 100%;
    height: 190px;
    text-align: center;
    object-fit: cover;
	height: 25vw;
    max-height: 190px;
}


.exList section {
    padding-top: 15px;
    padding-bottom: 15px;
}

.exList section h3 {
    font-size: 1.125em;
    font-weight: bold;
    margin-bottom: 8px;
}

.exList section ul {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 7px;
}

.exList section ul li {
    margin-right: 12px;
    font-size: 0.875em;
    font-weight: bold;
    margin-bottom: 8px;
}

.exList section ul li a {
    background-color: #F1F1F1;
    border-radius: 5px;
    border: 1px solid #707070;
    line-height: 1.1;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 15px;
    padding-right: 15px;
    display: block;
}

.exList section ul li a:hover {
    background-color: #CAE7F7;
    color: #000000;
}

.exList section p a {
    font-weight: 600;
    color: green;
    margin-top: -8px;
    display: block;
}

.titleStyle2 {
    font-size: 1.875em;
    font-weight: bold;
    text-align: left;
    margin-bottom: 24px;
}

.s_style li {
    background-color: #F1F1F1;
    border-radius: 5px;
    border: 1px solid #707070;
    line-height: 1.1;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 15px;
    padding-right: 15px;
    display: block;
}

.rightBtn {
    text-align: right;
    margin-top: 35px;
    margin-bottom: 45px;
}

.exBox {
    border: 1px solid #707070;
    padding-top: 25px;
    padding-left: 25px;
    padding-right: 25px;
    margin-bottom: 88px;
}

.exTit {
        font-size: 1.375em;
    background-color: #B7D971;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 17px;
    padding-bottom: 17px;
    text-align: left;
    font-weight: bold;
    margin-bottom: 10px;
    margin-top: 12px;
}

.exBox ul.jireiInfo li {
    display: inline-block;
    list-style-type: none;
    background-image: none;
    padding: 0;
}

.exBox ul.jireiInfo li span {
    font-weight: 600;
}

.exBox ul.jireiInfo li:after {
    content: '/';
    margin: 0 5px 0 5px;
    background-image: none;
}

.exBox ul.jireiInfo li:last-child:after {
    content: '';
}

.exBox .photoBox {
    display: flex;
    justify-content: space-evenly;
	margin: 0 0 25px;
}

.exBox .photoBox div {
    width: 40%;
}

.exBox .photoBox div img{
	width: 100%;
    height: 24vw;
    object-fit: cover;
}

.exBox .photoBox p {
    text-align: center;
    font-size: 1.3em;
    font-weight: 600;
    color: #33a03d;
}

.exBox figure.exArrow {
    width: 10%;
    align-self: center;
}

.exBox figure.exArrow img {
	width: 100%;
	height: auto;
}

.first h2 {
    border-bottom-width: 0px!important;
    padding-bottom: 0px!important;
}

.mitsumoriCompanyList {
    border: 3px solid #ccc;
    box-sizing: border-box;
    border-radius: 1em;
    padding: 1em 1em 0;
	margin: 0 0 40px;
}

.mitsumoriCompanyList ul li {
    display: inline;
    white-space: nowrap;
    float: left;
}

.mitsumoriCompanyList p {
    clear: both;
    margin: 0 0 0;
    text-align: right;
    padding: 0 0 1em;
}

.first .mw_wp_form h2,
.mw_wp_form form h3 {
margin-bottom:15px;
}

.mw_wp_form form .formStyle {
    display: block;
    font-size: 1.3em;
    padding: 0.1em;
	max-width: 100%;
    box-sizing: border-box;
	min-width: 200px;
}

.mw_wp_form form button.formStyle {
    font-weight: 600;
    width: 20%;
    margin: 1em auto 2em;
}

.mw_wp_form form .mwform-zip-field,
.mw_wp_form form .mwform-tel-field {
    display: flex;
}
.mw_wp_form form .mwform-zip-field .zipStyle,
.mw_wp_form form .mwform-tel-field .telStyle {
	margin: 0 0.2em;
    text-align: left;
    font-size: 1.3em;
    padding: 0.1em;
}

.mw_wp_form form span.mwform-radio-field.horizontal-item,
.mw_wp_form form span.mwform-checkbox-field.horizontal-item {
    float: left;
}

.mw_wp_form form textarea.formStyle {
    width: 100%;
    max-width: 800px;
    height: 300px;
}

.mw_wp_form form .clearboth {
    clear: both;
}

.mw_wp_form .error {
	text-align: left;
	/*display:none!important;*/
}

.sitemapWrap {
    display: flex;
    flex-wrap: wrap;
}

.sitemap {
    width: calc(50% - 1em);
    margin: 0 0.5em;
}

.sitemap ul li {
	font-size:20px;
	line-height:30px;
}

.sitemap ul li ul {
  margin-top: .5em;
  margin-bottom: .75em;
  margin-left: 48px;
}
 
.sitemap ul li ul li {
  margin-bottom: .25em;
  position: relative;
}
 
.sitemap ul li ul li::before {
  content: "";
  position: absolute;
  top: -0.5em;
  left: -16px;
  width: 10px;
  height: calc(100% + .75em);
  border-left: 1px solid #888;
}
 
.sitemap ul li ul li:last-child::before {
  height: calc(1em + .25em);
}
 
.sitemap ul li ul li::after {
  content: "";
  position: absolute;
  top: .75em;
  left: -16px;
  width: 10px;
  border-bottom: 1px solid #888;
}

.lineFlow {
    display: block;
    width: 80%;
    margin: 0 auto;
    max-width: 750px;
    border: 3px solid green;
}

.lineFlow h2 {
    background: green;
    color: #fff;
    padding: 0.5em 1em 0.6em 1em!important;
    display: block;
    height: auto;
    line-height: 1.4em;
	margin: 0;
}

.lineFlowInnr {
	padding: 1.5em;
}

.cms .lineFlowInnr p{
	padding-bottom: 0;
}

.lineFlowInnr img.wp-image-318,
.lineFlowInnr img.wp-image-341,
.lineFlowInnr img.wp-image-347 {
    width: 50%;
    max-width: 250px;
}
.lineFlowInnr img.wp-image-349 {
    width: 50%;
    max-width: 196px;
}

.lineFlowInnr img.wp-image-318 {
    border: 1px #ccc solid;
	min-width: 210px;
	margin: 0 1em 1em 0;
}

.lineFlowInnr hr {
	margin: 0 0 1em 0;
}

.line_tomodachi {
    display: block;
    max-width: 500px;
	width: 100%;
	margin: 0 auto;
}

.line_tomodachi a {
    display: flex;
    justify-content: center;
    width: auto;
    align-items: center;
    background: green;
    color: #fff;
    font-size: 1em;
    border-radius: 0.6em;
    font-weight: 600;
	
}

.line_tomodachi a:hover {

    color: #ccc;
}
.partners section h2,
.partners section h3 {
    background: none;
    margin: 10px 0 0;
	font-size: min(3.4vw,2.2em);
}

.partners ul.partners3point {
    margin: 0;
}

.partners ul.partners3point li {
    display: inline-block;
    background: none;
    color: #FFF;
    background: blue;
    padding: 0.3em 0.6em;
    border-radius: 0.8em;
    font-size: 1.3em;
    margin: 0.3em;
    font-weight: 600;
}

.partners section:nth-child(2n) {
    margin: 3em 0;
    padding: 1em;
}
.partners section:nth-child(2) {
    background: #d1f2fe;
	padding: 2em 2.5em 1em;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.partners section:nth-child(2) div{
	width: 50%;	
}
.partners section:nth-child(2) figure{
	width: calc(50% - 1em);
}

.partners section:nth-child(2) figure img{
	width: 100%;
}

.partners section:nth-child(2) h2{
	font-size: min(3.6vw,2.375em);
}

.partners section:nth-child(2) ul li{
    font-size: min(1.8vw,1.25em);
    background-image: none;
    list-style: disc;
    list-style-position: outside;
    margin: 0 0 0 1em;
    padding: 0;
}

.partners section .kaiketsu h2,
.partners section #choice h2{
	font-size: 2.375em;
    font-weight: 600;
	text-align: center;
}

.partners section .kaiketsu_comm {
    width: 95%;
    margin: 0 auto 45px;
}

.partners section .kaiketsu_comm li {
    font-size: 1.250em;
    margin-bottom: 10px;
    background-image: none;
    list-style: disc;
    padding: 0;
}

.cms section .flow p {
	font-size: 1.250em;
    text-align: left;
    line-height: 1.7;
}

.cms section .flow figure {
    margin-bottom: 30px;
}

.partners section #choice .choiceList {
    display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
}

.partners section #choice .choiceList li {
    width: calc(33% - 1em);
    background-image: none;
    text-align: center;
	padding: 0;
}

.partners section #choice .choiceList li span {
    text-align: left;
    display: block;
}

.cms p.soudanBtn {
    padding: 0;
    margin: 1em;
	text-align: center;
}

.cms p.soudanBtn a {
    display: block;
    background: orange;
    color: #FFF;
    padding: 1em;
    font-size: 1.3em;
    border-radius: 1em;
    width: 50%;
    min-width: 500px;
    box-sizing: border-box;
    margin: 0 50px 0 auto;
}

.cms p.soudanBtn a {
  color: #fff;
  background-color: #eb6100;
  border-bottom: 5px solid #b84c00;
  -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
  box-shadow: 0 3px 5px rgba(0, 0, 0, .3);

}
.cms p.soudanBtn a:hover {
	background: #a46539;
    color: #ccc;
}

img.alignright {
	float: right;
	margin: 0 0 1em 1em;
	max-width: 40%;
}

img.alignleft {
	float: left;
	margin: 0 1em 1em 0;
	max-width: 40%;
}


/* PC向けおよび大型タブレット向けのレイアウトの指定：1081px～ */
@media only screen and (min-width:1081px) {
nav.NavMenu.fixed {
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 10;
}
}

/* PC向けおよび大型タブレット向けのレイアウトの指定：1px～1080px */
@media only screen and (min-width:961px) and (max-width:1080px){
img {
    width: 100%;
    max-width: 100%;
    height: auto;
    width /***/: auto;
    text-align: center;
}
/*トップページメイン*/
#mainBg {
    height: 355px;
}

/*ヘッダー*/
#tel a {
    font-size: 1.263em;
}
#tel a img {
    margin-right: 5px;
}

#global li a {
    padding: 15px 12px;
}

/*業者個別*/
.a_list,
.corpPrice table {
    width: 50%;
}
.b_list,
.corpPrice section {
    width: calc(50% - 1em);
}
/*コラム*/
.left {
    width: calc(100% - 26vw);
}
.right {
    width: 25vw;
}
.column figure {
    width: 173px;
}
.column section {
    width: calc(98% - 173px);
}
}

/* PC向けおよび大型タブレット向けのレイアウトの指定：961px～ */
@media only screen and (min-width:961px) {
.a_list p {
    font-size: 0.9em;
    line-height: 1.5;
}
.a_list p span {
    display: inline-block;
}

.sp-only {
	display: none;
}
}

/* PC向けおよび大型タブレット向けのレイアウトの指定：1px～960px */
@media only screen and (min-width:1px) and (max-width:960px){
/*==========================================
 body
===========================================*/
body {
	min-width: 100%;
	text-align: center;
	width: 100%;
}

img {
	width: 100%;
	max-width: 100%;
	height: auto;
	width /***/: auto;
　/*IE8のみ適用*/
; 	text-align: center;
	}
    
.spImg {
    display: inherit;
    margin-left: auto;
margin-right: auto;
}

.pcImg {
    display: none;
}

.sp-only {
	display: inherit;
}

.green_tit .sp-only {
	display: inline;
}

.pc-only {
	display: none;
}

#headerInfo,
#headerNavi1 {
    display: none;
}

#submenu,
#spinfo {
        display: inherit;
}

#global {
    background-color: transparent;
    display: block;
    padding-top: 0px;
    padding-bottom: 0px;
}

#global li{
    background-image: none;
}

#global li a {
    padding-left: 0px;
    padding-right: 0px;
}

/*==========================================
Menu
===========================================*/    
nav.NavMenu {
    position: fixed;	/*表示位置を固定*/
    z-index: 1001;		/*重ね順を変更*/
    top: 0;		/*表示位置を指定*/
    left: 0;	/*表示位置を指定*/
    background: rgb(142,195,31);
    background: -moz-linear-gradient(90deg, rgba(142,195,31,1) 0%, rgba(35,184,188,1) 100%);
    background: -webkit-linear-gradient(90deg, rgba(142,195,31,1) 0%, rgba(35,184,188,1) 100%);
    background: linear-gradient(90deg, rgba(142,195,31,1) 0%, rgba(35,184,188,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#8ec31f",endColorstr="#23b8bc",GradientType=1);
    color: #000;	/*文字色を黒にする*/
    text-align: center;		/*テキストを中央揃え*/
    width: 100%;	/*全幅表示*/
    transform: translateX(100%);	/*ナビを上に隠す*/
    height: 100%;
    display: inherit;
    padding-left: 16px;
    padding-right: 16px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    overflow-y: scroll;
}

/*トグルボタンが押されたときに付与するクラス*/
nav.NavMenu.active{
transform: translateX(0%);
transition: all 0.6s;	/*アニメーションの時間を指定*/
}
/*トグルを閉じる操作をしたら付与するクラス*/
nav.NavMenu.off{
transition: all 0.6s;	/*アニメーションの時間を指定*/
}

/*トグルボタンのスタイルを指定*/
.Toggle {
    display: block;
    position: fixed;    /* bodyに対しての絶対位置指定 */
    right: 13px;
    top: 12px;
    width: 51px;
    height: 51px;
    cursor: pointer;
    z-index: 1002;
    background-color: #23B8BC;
    border-radius: 8px;
}
 
.Toggle span {
display: block;
position: absolute;
width: 26px;
border-bottom: solid 4px #FFF;
-webkit-transition: .35s ease-in-out;	/*変化の速度を指定*/
-moz-transition: .35s ease-in-out;		/*変化の速度を指定*/
transition: .35s ease-in-out;
top: 0px;
left: 12px;
}
 
.Toggle span:nth-child(1) {
    top: 13px;
}
 
.Toggle span:nth-child(2) {
    top: 23px;
}
 
.Toggle span:nth-child(3) {
    top: 33px;
}

 
/* 最初のspanをマイナス45度に */
.Toggle.active span:nth-child(1) {
    top: 23px;
    left: 12px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
 
/* 2番目と3番目のspanを45度に */
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
    top: 23px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

.Toggle.active {
background-color: transparent;
}

#global {
    max-width: 85%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 60px;
}

#global li {
    padding-bottom: 25px;
    font-size: 1.125em;
}

ul#global li.hasChildren ul {
    display: block;
    background: none;
	position: relative;
	padding: 0;
	top: 0;
}

ul#global li.hasChildren ul li {
    padding: 0;
}

ul#global li.hasChildren ul li a {
    padding: 15px 0 0;
}

.spline {border-top: 1px solid #FFFFFF;}

#submenu {
    max-width: 85%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 26px;
}

#submenu li {
    padding-bottom: 13px;
}

#spinfo aside {
    background-color: hsla(0,0%,100%,0.54);
    border-radius: 10px;
    margin-top: 0px;
    margin-right: 0px;
    margin-left: 0px;
    padding-top: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
    font-family: fot-udkakugo-large-pr6n, sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 1.375em;
}

#spinfo aside span {
    display: block; 
        font-size: 0.6em;
         font-style: normal;
}

#spinfo aside a {
    display: flex;
    justify-content: center;
    align-items: center;
}

.spBtn {
    display: flex;
    justify-content: center;
    margin-top: 15px;
    margin-bottom: 40px;
}

.spContact,
.spLine {
    margin-right: 8px;
    margin-left: 8px;
}

.spContact a {
    background-color: #E61874;
    color: #FFFFFF;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 15px;
    padding-right: 15px;
    padding-bottom: 15px;
    padding-left: 15px;
    border-radius: 10px;
    display: inline-block;
    width: 170px!important;
    text-align: center;
}
.spLine a {
 width: 170px!important;
    background-color: #00B900;
    color: #FFFFFF;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
        padding-top: 15px;
    padding-right: 15px;
    padding-bottom: 15px;
    padding-left: 15px;
        border-radius: 10px;
       display: inline-block;
           text-align: center;
}

.spContact a span {
    background-image: url(images/mail.png);
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 35px;
}

.spLine a span {
    background-image: url(images/line.png);
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 50px;
    padding-top: 5px;
    padding-bottom: 5px;
}

/*==========================================
Other
===========================================*/
#mainBg {
    height: auto;
}

#mainConcept {
    display: block;
    padding-top: 35px;
}

#headerTop-block h1,
#headerTop-block aside#logo {
    margin-bottom: 20px;
    margin-top: 20px;
}

#mainConcept aside img {
	height: auto;
    width: 20vw;
    min-width: 175px;
}

#mainConcept aside {
    text-align: right;
    margin-top: -190px;
}

.mainConcept-inner ul li {
    width: calc(100%/2 - 20px);
    font-size: 0.9em;
    margin-bottom: 20px;
}


.pcbr {
    display: none;
}

.tbImg {
    display: inherit;
    margin-left: auto;
margin-right: auto;
}

.pcImg2 {
    display: none;
}

.tbbr {
    display: inherit;
}

#page-top {
    position: fixed;
    right: 15px;
    bottom:15px;
}

#page-top img {
    width: 77px;
    height: auto;
}

.green_tit {
    margin-top: 43px;
}

.ex li {
    width: calc(100%/2 - 20px);
}

.navigation {
    margin-top: -50px!important;
    margin-bottom: 80px!important;
}

.rightImg {
    max-width: 350px;
}

.ab_list {
    display: block;
}

.a_list {
    max-width: 100%;
    width: 100%;
    margin-bottom: 0px;
}

.b_list {
    max-width: 100%;
    width: 100%;
    margin-bottom: 0px;
}

.a_list figure {
    max-width: 100%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
}

.corpPrice {
display: block;
}

.corpPrice table {
max-width: 100%;
width: 100%;
}

.corpPrice section {
    max-width: 100%;
    width: 100%;
    margin-top: 50px;
}

.corpAbout dt {
    font-size: 1em;
}

.corpAbout dd {
    width: calc(80% - 40px);
    font-size: 1em;
    padding-left: 20px;
    margin-left: 20px;
}



.staffVoice figure {
    max-width: 250px;
    width: 100%;
    margin-left: 20px;
}

.layout {
display: block;
}

.left {
    max-width: 100%;
    width: 100%;
    margin-bottom: 50px;
}

.right {
max-width: 100%;
width: 100%;
}

.alignleft {
    max-width: 300px;
}

.aligneright {
    max-width: 300px;
}

.pageNavi {
    margin-bottom: 80px;
}

.exList {
    width: calc(100%/3 - 20px);
}
	

}


@media only screen and (max-width:768px){
/*==========================================
 Other
===========================================*/
.column figure {
    margin-right: 15px;
}

  .qa .p-faq__bodyinner {
    padding-left: 25px;
  }
  .qa .p-faq__bodyinner::before {
    font-size: 14px;
  }
  .qa .p-faq__bodyinner p.p-faq__a-txt {
    font-size: 14px;
  }
  
  .qa .accordion_area .accordion_one .ac_header .i_box,
	.qa .accordion_area .accordion_two .ac_header .i_box{
    right: 0.8rem;
    width: 15px;
    height: 15px;
    margin-top: -7px;
  }
  .qa .accordion_area .accordion_one .ac_header .i_box:before,
	.qa .accordion_area .accordion_two .ac_header .i_box:before
	{
    width: 15px;
  }
  .qa .accordion_area .accordion_one .ac_header .i_box:after,
	.qa .accordion_area .accordion_two .ac_header .i_box:before	
	{
    height: 15px;
    right: 7px;
  }
  .qa .accordion_area .accordion_one .ac_inner,
	.qa .accordion_area .accordion_two .ac_header .i_box:before		
	{
    padding-right: 1.5rem;
    padding-left: 1.5rem;
    padding-bottom: 1.5rem;
  }

.right_subMenu {
    margin-bottom: 80px;
}
.sitemapWrap {
	display: block;
}

.sitemap {
    width: calc(100% - 1em);
}
.partners ul.partners3point li {
    padding: 0.2em 0.4em;
    font-size: 1em;
    margin: 0.1em;
}
.partners section:nth-child(2) {
    padding: 1em 1.7em 1em;
}
.partners section:nth-child(2) div{
	width: 100%;	
}
.partners section:nth-child(6) {
    padding: 0;
}
.partners section:nth-child(2) h2 {
    font-size: min(5.3vw,2.375em);
    margin: 0 0 1em;
}
.partners section:nth-child(2) figure{
	width: 100%;
}
.partners section:nth-child(2) ul li {
    font-size: min(4vw,1.3em);
}
tners section:nth-child(2) h2 {
    font-size: min(6vw,2.375em);
}
.partners section .kaiketsu h2, .partners section #choice h2 {
    font-size: min(6vw,2.2em);
}

.partners section h2,
.partners section h3 {
    background: none;
    margin: 10px 0 0;
    font-size: min(5vw,2.2em);
}
.partners section .kaiketsu_comm li {
    font-size: min(4.8vw,1.3em);
    margin: 0.3em 1em;
}
.cms section .flow p {
    font-size: min(4.8vw,1.3em);
}
.cms p.soudanBtn a {
    margin: 0;
    width: 100%;
    min-width: 100%;
}
}

@media only screen and (min-width: 470px) and (max-width: 600px){
/*==========================================
 幅640px以下から ヘッダー等微調節
===========================================*/
#footerMenu {
	font-size: 1em;
	}
}

@media only screen and (max-width: 600px){
/*==========================================
 幅600px以下から ヘッダー等微調節
===========================================*/
.lineFlow {
	width: 98%;		
}

.lineFlowInnr p img.alignleft {
    float: none;
    margin: 0 auto 1.5em;
    display: block;
}
	
.lineFlowInnr hr {	
	margin: -10px auto 15px;
}

.line_tomodachi a {
    flex-wrap: wrap;
    justify-content: center;
    padding: 1em 0.6em 1em;
    font-size: 0.8em;
}
.lineFlowInnr img.wp-image-341, .lineFlowInnr img.wp-image-347 {
    width: 100%;
    max-width: 250px;
}
}


@media only screen and (max-width: 470px){
/*==========================================
 幅470px以下から ヘッダー等微調節
===========================================*/

.exBox {
    padding-top: 20px;
    padding-left: 20px;
    padding-right: 20px;
    margin-bottom: 50px;
}

.titleStyle2 {
    font-size: 1.6em;
    margin-bottom: 24px;
}

.rightBtn {
    text-align: center;
        margin-top: 15px!important;
    margin-bottom: 30px!important;
}
.qapage .accordion_area .accordion_one .ac_header .i_box,
.qapage .accordion_area .accordion_two .ac_header .i_box {
    right: 0rem;
}
	
.qapage .accordion_area .accordion_one .ac_inner p.p-faq__a-txt,
.qapage .accordion_area .accordion_two .ac_inner p.p-faq__a-txt {
    font-size: 1.1em!important;
}

.qapage .ac_inner aside {
    padding-left: 0px;
}
	
.qapage  .accordion_area .accordion_one .ac_inner,
.qapage  .accordion_area .accordion_two .ac_inner {
    padding-right: 0rem;
    padding-left: 0rem;
    padding-bottom: 50px;
}

.qapage .p-faq__headinner p.p-faq__q-txt span {
padding-right: 30px;
}

.qapage .p-faq__headinner p.p-faq__q-txt, .qapage .p-faq__headinner p.p-faq__a-txt {
    font-size: 1.1em;
    font-weight: normal!important;
}
.qapage p.p-faq__a-txt span {
	align-self: flex-start;
}

.subList li {
        width: calc(100%/2 - 10px);
    margin-right: 5px;
    margin-left: 5px;
    margin-bottom: 20px;
}

.pageNavi {
    width: calc(100% - 20px);
}

.cms blockquote {
    padding-top: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
    padding-left: 20px;
}

.cms table th {
    width: 35%;
}

.alignleft {
    float: none;
    max-width: 100%;
    width: 100%;
    margin-right: 0px;
}

.aligneright {
    float: none;
    max-width: 100%;
    width: 100%;
    margin-left: 0px;
}

.titStyle {
    font-size: 1.6em;
}

.column {
    display: block;
}

.column figure {
    max-width: 100%;
    width: 100%;
    margin-right: 0px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 13px;
}

.column figure img {
    width: 100%;
    max-width: 100%;
    height: auto;
    width /***/: auto;
    text-align: center;
    object-fit: cover;
}

.tableStyle2 th {
    width: 100%;
    display: block;
}

.tableStyle2 td {
    width: 100%;
    display: block;
}


.staffVoice {
    display: block;
}

.staffVoice figure {
    max-width: 100%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 15px;
}

.staffVoice section {
    max-width: 100%;
}

.kuchikomi dl {
    padding-top: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
    padding-left: 20px;
}

.corpAbout {
display: block;
}

.corpAbout dt {
    width: 100%;
    margin-bottom: 5px;
}

.corpAbout dd {
    width: 100%;
    border-left: 0px solid #707070;
    padding-left: 0px;
    margin-left: 0px;
    border-bottom: 1px dotted #707070;
    padding-bottom: 15px;
    margin-bottom: 20px;
}

.corpName {
    font-size: 1.4em;
    font-weight: bold;
}

.corptext {
    font-size: 0.9em;
}

.corpTel h3 {
    font-size: 1.1em;
}

.corpTel p {
    font-size: 1.3em;
}

.rightImg {
    float: none;
    margin-left: 0px;
    max-width: 100%;
width: 100%;
margin-left: auto;
margin-right: auto;
}

.ex {
    width: 100%;
}

.ex li {
    width: 100%;
    margin-left: 0px;
    margin-right: 0px;
}

.ex li img {
    height: 50vw;
    max-height: 190px;
}

.tableStyle th,
.tableStyle td {
    font-size: 1em;
}

#pNavi {
    font-size: 0.9em;    
}

.spBtn {
	flex-wrap: wrap;
}

.spContact, .spLine {
    margin-right: 0px;
    margin-left: 0px; 
}

.spContact,
.spLine {
    width: 100%;
}

.spContact {
	margin: 0 auto 1em;
}

.spContact a {
       display: block;
    width: auto!important;
}
.spLine a {
     display: block;
    width: auto!important;
}

#footerMenu span {
    display: none;
}

#footerMenu a {
    display: block;
    padding-top: 5px;
    padding-bottom: 5px;
}

.pcImg3 {
    display: none;
}

.btn {
    margin-top: 23px;
    font-size: 1.250em;
}

.btn a {
    padding-left: 20px;
    padding-right: 20px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
}

.space {
max-width: 100%;
width: calc(100% - 2em);
margin-left: auto;
margin-right: auto;
}

#list li {
    margin-right: 0px;
    margin-bottom: 15px;
    width: 100%;
    text-align: center;
}

#list li a {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
}

.spbr {
    display: inherit;
}

#mainBg {
    background-image: url(images/main_bg_sp.png);
}

.m01 {
    padding-top: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
}

.m02 {
    padding-top: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
}

.m03 {
    padding-top: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
}

#mainConcept aside img {
    height: 250px;
    width: auto;
}

#mainConcept aside {
    text-align: right;
    margin-top: -190px;
}

.as {
display: block;
}

.as section {
    width: 100%;
}

.exList {
    width: 100%;
    margin-left: 0px;
    margin-right: 0px;
}

.exList figure img {
height: auto;
}

p.noSearch {
    font-size: 1.8em;
	text-align: left;
}

.mw_wp_form form .mwform-zip-field .zipStyle,
.mw_wp_form form .mwform-tel-field .telStyle {
    width: 33%;
}
}

@media only screen and (max-width: 375px){
/*==========================================
 幅375px以下から ヘッダー等微調節
===========================================*/
#headerTop-block h1, #headerTop-block aside#logo {
    width: 70vw;
}
	
#global li {
    font-size: 0.9em;		
}

.btn {
    margin-top: 0;
    font-size: 1.2em;
}

.btn.orange {
	margin-top: 14px;
}

.subList-block_inner {
    margin: 10px;
}
.subList-block_inner h2 {
    font-size: 1.3em;
    padding: 10px 15px;
}

.btn.orange form input[type="submit"] {
	font-size: 1em;
}

.a_list p {
    margin-bottom: 24px;
}

.green_tit,
.blue_tit,
.green_tit2 {
	font-size: 1.2em;
	margin-top: 62px;
	margin-bottom: 21px;
}

.fontStyle3,
.corpPrice table th
 {
    font-size: 1em;
}

.kuchikomi dl dd,
.staffVoice section p {
    font-size: 1em;
    line-height: 1.5;
}
.staffVoice section h4 {
    font-size: 1.2em;
    padding-bottom: 12px;
    margin-bottom: 17px;
}

#footerMenu {
    padding: 26px 0;
    font-size: 1.1em;
    line-height: 1em;
}

.line_tomodachi a {
    padding: 1em 0.6em 1.7em;
}

.partners section #choice .choiceList li {
    width: calc(100% - 1em);
}
.partners section #choice .choiceList li span {
    text-align: center;
}
}

@media only screen and (max-width: 320px){
/*==========================================
 幅320px以下から ヘッダー等微調節
===========================================*/
#global {
    margin-top: 30px;
}

#headerTop-block h1 img,
#headerTop-block aside#logo img {
   max-width: 220px;
width: 100%; 
}

#mainConcept aside img {
    height: 190px;
    width: auto;
}

#mainConcept aside {
    text-align: right;
    margin-top: -170px;
}
}

.arrow {
    clear: both;
    display: block;
    width: 40px;
    height: 40px;
    margin: 0 auto;
    border-top: 8px solid #5f5050;
    border-right: 8px solid #5f5050;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    margin-bottom: 30px;
}

.arrow.left {
    margin: 0 auto 3em 2em;
}

@media only screen and (min-width: 471px){
.footerFixBtn,.footerToggle {
	display: none!important;
}
}

@media only screen and (max-width: 470px){
/*==========================================
 幅470px以下から フッター開閉ボタン調節
===========================================*/
footer {
    padding: 0 0 85px;
}
#page-top {
    bottom: 100px;
}
#page-top img {
    width: 50px;
}

.footerFixBtn {
display: flex;
justify-content: center;
align-items: center;
    width: 100%;
    display: block;
    background-color: #F9BF45;
    position: fixed;
    bottom: 0;
    transition: all 0.6s;
    box-sizing: border-box;
    height: 65px;
    z-index: 1000;
}

#footerImg {
    position: absolute;
    top: -29px;
    right: 0;
}

#footerImg2 {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.ffb {
    width: 100%;
    height: 65px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.313em;
    font-weight: bold;
    cursor:pointer
}

.f_yajirushi {
    margin-right: 10px;
}

.footerFixBtn.on {
    bottom: 130px;
    transition: all 0.6s;
}

.footerToggle {
    display: block;
    position: fixed;
    bottom: -130px;
    width: 100%;
    transition: all 0.6s;
    z-index: 1000;
}

.footerToggle.open {
    bottom: 0;
    transition: all 0.6s;
}

.footerToggle .contactBox_1{
    display: flex;
}

.footerToggle .contactBox_1 div {
    width: calc(100% / 2);
    height: 65px;
}

.footerToggle .contactBox_2 div{
    width: 100%;
    height: 65px;
}

.footerToggle div div a {
    display: block;
    width: 100%;
    height: 100%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-align: left;
    color: #FFFFFF;
    font-size: 1.063em;
    font-weight: bold;
}

.footerToggle div div a img {
    margin-right: 10px;
}

.footerToggle .toggleContact {
    background-color: #E61874;
}
.footerToggle .toggleTel {
    background-color: #0450B4;
}
.footerToggle .toggleLine {
    background-color: #00B900;
}
}

@media only screen and (max-width: 420px){
/*==========================================
 幅420px以下から フッター開閉ボタン調節
===========================================*/
.ffb {
    justify-content: flex-start;
    font-size: 1.1em;
    margin:0 0 0 0.9em;
}
.footerToggle div div a {
    font-size: 0.9em;
}
}

@media only screen and (max-width: 640px){
/*==========================================
 幅420px以下から フッター開閉ボタン調節
===========================================*/
.column-template-default #ez-toc-container {
    max-width: 650px;
    margin: 0 0 2em;
    padding: 1em 1em 1em 1.3em;
}
.column-template-default #ez-toc-container .ez-toc-toggle label{
	left:0;
}
.column-template-default #ez-toc-container ul li {
    font-size: 100%;
    line-height: 1.8;
}


.topMainBn {
    width: 100%;
    margin: 0 auto 3em;
}

.topMainBn figure img {
    width: 100%;
    height: 420px;
    object-fit: cover;
}

.topBnUnder .contactBox {
    display: flex;
}

.topBnUnder .contactBox_1 {
    background-color: #E61874;
}

.topBnUnder .contactBox_2 {
    background-color: #0450B4;
}

.topBnUnder .contactBox div {
    width: calc(100% / 2);
    height: 65px;
}

.topBnUnder div div a {
    display: block;
    width: 100%;
    height: 100%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-align: left;
    color: #FFFFFF;
    font-size: 1.063em;
    font-weight: bold;
	padding: 5px;
	box-sizing: border-box;
}


.topBnUnder div div a span {
    display: block;
    font-size: 1.1em;
    color: yellow;
    margin: 0 0.5em;
}

@media only screen and (min-width: 961px){
.home main {
    padding-top: 52px;
}	
}

@media only screen and (max-width: 960px){
.topMainBn figure img {
    height: auto;
}	
}

@media only screen and (max-width: 640px){
.topMainBn figure img {
    height: 216px;
}	
}

@media only screen and (max-width: 540px){
.topBnUnder div div a {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    font-size: 0.9em;
}
}

/* 投稿エディタのカスタマイズ関連CSS　2023/12*/
.boxStyle {
    padding: 1em 1em 1.06em;
    box-sizing: border-box;
    display: block;
    border-radius: 6px;	
	margin-bottom: 1em;
}

.boxStyle h1:first-child ,
.boxStyle h2:first-child ,
.boxStyle h3:first-child ,
.boxStyle h4:first-child ,
.boxStyle h5:first-child ,
.boxStyle h6:first-child ,
.boxStyle p:first-child ,
.boxStyle ul:first-child {
	margin-top: 0;
	padding-top: 0;
}

.boxStyle.exclamation p:last-child,
.boxStyle.hatena p:last-child,
.boxStyle p:last-child ,
.boxStyle ul:last-child {
	padding-bottom:0;
	margin-bottom: 0;
}


.boxStyle h2:first-child {
    margin-top: 0;
}

.pnkBox {
    background-color: #f9e6e6;
}
.blueBox {
    background-color: #dbf1ec;
}
.pnkBorderBox {
    background-color: #fff;
	border: 3px solid #db7f7f;
}
.blueBorderBox {
    background-color: #fff;
	border: 3px solid  #5ebae5;
}

.boxStyle.exclamation {
	background-color: #fff;
    border: 3px solid red;
    position: relative;
    padding-left: 65px;
    padding-right: 1.5em;
}

.boxStyle.exclamation h3 {
    background: none;
    margin-bottom: 0.5em;
    padding: 0;
}

.boxStyle.exclamation p {
    padding-bottom: 0.9em;
}

.exclamation:before {
    content: '!';
    color: #fff;
    background: red;
    border-radius: 50%;
    min-width: 30px;
    width: 30px;
    height: 30px;
    display: block;
    text-align: center;
    font-weight: 600;
    margin-right: 6px;
    position: absolute;
    left: 1em;
	line-height: 1.8em;
}

.boxStyle.hatena {
	background-color: #fff;
	border: 3px solid green;
    position: relative;
    padding-left: 65px;
    padding-right: 1.5em;
}

.boxStyle.hatena h3 {
    background: none;
    margin-bottom: 0.5em;
    padding: 0;
}

.boxStyle.hatena p {
    padding-bottom: 0.9em;
}

.hatena:before {
	content: '?';
    color: #fff;
	background: green;
    border-radius: 50%;
    min-width: 30px;
    width: 30px;
    height: 30px;
    display: block;
    text-align: center;
    font-weight: 600;
    margin-right: 6px;
    position: absolute;
    left: 1em;
}

.btnStyle{
  display: inline-block;
  padding: 0.5em 1em;
  text-decoration: none;
  border-radius: 4px;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
  border-bottom: solid 3px #5e7fca;
  margin: 1em 0;
}

a.btnStyle:before {
    content: '➡';
    margin: 0 6px 0 0;
}

.blueBtn {
  color: #ffffff;
  background-image: linear-gradient(#6795fd 0%, #67ceff 100%);
	  border-bottom: solid 3px #5e7fca;
}

.orgBtn {
  color: #ffffff;
  background-image: linear-gradient(45deg, #FFC107 0%, #ff8b5f 100%);
	border-bottom: solid 3px #c58668;
}

.grnBtn {
    color: #ffffff;
    background-image: linear-gradient(45deg, #54a74a 0%, #5dcf9a 100%);
    border-bottom: solid 3px #28533c;
}

.btnStyle:active {
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
  box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2);
  border-bottom: none;
}

.social-share-buttons ul {
    display: flex;
    justify-content: flex-end;
}

.social-share-buttons ul li:first-child {
    display: flex;
    justify-content: center;
}

.social-share-buttons ul li:first-child a {
	align-self: center;
}

.social-share-buttons ul li {
	list-style: none;
    width: 30px;
    background: none;
    padding: 0;
    margin: 0;
}

.social-share-buttons ul li:first-child a img {
    width: 24px;
	margin-top: 2px;
}

.social-share-buttons ul li img{
	width: 100%;
}

span.txt_marker {
	background: linear-gradient(transparent 65%, #6f6 50%);
}

h2:has(.red_border_bottom) {
    border-bottom: 2px solid #bd2c2c;
}

h2:has(.blu_border_bottom) {
    border-bottom: 2px solid #5a629b;
}

h3:has(.red_border_bottom) {
    border-bottom: 1px solid #bd2c2c;
}

h3:has(.blu_border_bottom) {
    border-bottom: 1px solid #5a629b;
}

.speak_bbl {
  padding: 20px 10px;
  margin: 15px auto;
  text-align: right;
  font-size: 14px;
}

.balloon {
  width: 100%;
  margin: 10px 0;
  overflow: hidden;
}

.balloon .faceicon {
  float: left;
  margin-right: -50px;
  width: 40px;
}

.balloon .faceicon img{
    width: 40px; /* アイコンの幅 */
    height: 40px; /* アイコンの高さ */
  border-radius: 50%;
	object-fit:cover;
}
.balloon .chatting {
  width: 100%;
  text-align: left;
}
.says {
  display: inline-block;
  position: relative; 
  margin: 0 0 0 50px;
  padding: 10px;
  border-radius: 12px;
  background: #edf1ee;
}

.says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 3px; 
  left: -19px;
  border: 8px solid transparent;
  border-right: 18px solid #edf1ee;
  -webkit-transform: rotate(35deg);
  transform: rotate(35deg);
}
.says p {
  margin: 0;
  padding: 0;
}
/* 投稿エディタのカスタマイズ関連CSSここまで　2023/12*/
