
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css?family=Josefin+Sans);
@import url(https://fonts.googleapis.com/css2?family=Lato:wght@900&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@700&display=swap);
@import url('https://fonts.googleapis.com/css2?family=Qwitcher+Grypen:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@500;700&display=swap');

body, div,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre, dl, dt, dd, ol, ul, li, hr,
fieldset, form, label, legend, th, td,
article, aside, figure, footer, header, hgroup, menu, nav, section,
summary, hgroup {
  margin: 0;
  padding: 0;
  border: 0;
}

a:active,
a:hover {
  outline: 0;
}

@-webkit-viewport { width: device-width; }
@-moz-viewport { width: device-width; }
@-ms-viewport { width: device-width; }
@-o-viewport { width: device-width; }
@viewport { width: device-width; }

/* ------------------------------------------
  MAIN STYLES
--------------------------------------------- */

body {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    color: #333333;
    background: #fff;
    font: 14px/1.8 'Noto Sans JP', Arial, Verdana, 游ゴシック, YuGothic,'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', メイリオ, Meiryo,sans-serif;
}

section {
    text-align: center;
    padding: 0;
    width: 100%;
}

br.xs {
    display: block;
}
br.sm {
    display: none;
}
br.lg {
    display: none;
}

.punctuation_sm{
    display: none;
}

.PB20{
    padding-bottom: 20px;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type="number"] {
  -moz-appearance:textfield;
}

@media screen and (min-width: 640px) {
    br.xs {
        display: none;
    }
    br.sm {
        display: block;
    }
    br.lg {
        display: none;
    }
    
    .punctuation_sm{
        display: inline;
    }
    
}

/* PC */
@media screen and (min-width: 920px) {
    br.xs {
        display: none;
    }
    br.sm {
        display: none;
    }
    br.lg {
        display: block;
    }
    .punctuation_sm{
        display: inline;
    }
    
}

.mincho {
    font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.f_left{
    float: left;
}
.f_right{
    float: right;
}

/* ------------------------------------------
  FIXED HEADER
--------------------------------------------- */

#himage{
    z-index: 1;
    background: #FFFFFF;
    overflow: hidden;
    margin-top: 80px;
}

#himage img{
    width: 100%;
}


#articles-scroll{
    overflow: hidden;
    z-index: 10;
    transition: .3s;
    background-color: rgba(255,255,255,1);
    height: auto;
}

.is-fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
}

header {
    overflow: hidden;  
}


#header_text{
    height: 20px;
    z-index: 100;
	background: #EEEEEE;
	line-height: 20px;
	font-size: 11px;
	padding-left: 20px;
}

#header_box{
    height: 60px;
    z-index: 100;
}

.logo {
    padding: 15px 10px 0 10px;
    float: left;
}

.logo img{
    height: 30px;
    transition: .3s;
}

.header_txt{
    float: left;
    padding: 15px 0 10px 10px;
    color: #003F98;
    display: none;
}

.membership{
    float: left;
    padding: 23px 0px 0 0px;
    display: block;
    width: 80px;
    transition: .3s;
}

.membership-eshop{
	float: left;
    padding: 18px 0px 0 0px;
    display: block;
    width: 45px;
    transition: .3s;
}
.membership-smile{
	float: left;
    padding: 18px 0px 0 0px;
    display: block;
    width: 80px;
    transition: .3s;
}

.header_tel{
    float: right;
    padding: 0px 10px 0 10px;
    display: none;
}

.eyecatch_pc{
    display: none;
}
.eyecatch_sp{
    display: block;
}

.products_pc{
    display: none;
}
.products_sp{
    display: block;
}



.highlight {
    background: linear-gradient(transparent 60%, #FFFF60 0%);
}

.sp-slide {/*親div*/
  position: relative;/*相対配置*/
  }

.sp-slide div.sltext {
    position: absolute;/*絶対配置*/
    width: 100%;
    top: 0%;
    left: 0%;
    transition: .3s;

}


.sp-slide div.sltext p.title {
    font-size: 30px;
    font-weight: 700;
    color: #003F98;
    line-height: 1.8;
    transition: .3s;
    text-align: left;
    letter-spacing: 0em;
    padding-top: 20px;
    padding-left: 10px;
    text-shadow:
	3px  3px 3px #ffffff,
    -3px  3px 3px #ffffff,
     3px -3px 3px #ffffff,
    -3px -3px 3px #ffffff,
     2px  2px 1px #ffffff,
    -2px  2px 1px #ffffff,
     2px -2px 1px #ffffff,
    -2px -2px 1px #ffffff,
	 2px  0px 1px #ffffff,
    -2px  0px 1px #ffffff,
     2px -0px 1px #ffffff,
    -3px -0px 1px #ffffff,
		-1px -1px 0 #ffffff, -1px 0 0 #ffffff, -1px 1px 0 #ffffff,
                  0 -1px 0 #ffffff,                  0 1px 0 #ffffff,
                1px -1px 0 #ffffff,  1px 0 0 #ffffff,  1px 1px 0 #ffffff;
}

.sp-slide div.sltext p.title2 {
    font-size: 34px;
    font-weight: 700;
    color: #222;
    line-height: 1.8;
    transition: .3s;
    text-align: left;
    letter-spacing: 0em;
    padding-top: 20px;
    padding-left: 10px;
    text-shadow:
	3px  3px 3px #ffffff,
    -3px  3px 3px #ffffff,
     3px -3px 3px #ffffff,
    -3px -3px 3px #ffffff,
     2px  2px 1px #ffffff,
    -2px  2px 1px #ffffff,
     2px -2px 1px #ffffff,
    -2px -2px 1px #ffffff,
	 2px  0px 1px #ffffff,
    -2px  0px 1px #ffffff,
     2px -0px 1px #ffffff,
    -3px -0px 1px #ffffff,
		-1px -1px 0 #ffffff, -1px 0 0 #ffffff, -1px 1px 0 #ffffff,
                  0 -1px 0 #ffffff,                  0 1px 0 #ffffff,
                1px -1px 0 #ffffff,  1px 0 0 #ffffff,  1px 1px 0 #ffffff;
}

.sp-slide div.sltext p.text {
    margin-top: 0px;
    padding-left: 10px;
    font-size: 15px;
    font-weight: bold;
    color: #003F98;
    line-height: 1.7;
    letter-spacing: 0.005em;
    transition: .3s;
    text-align: left;
    text-shadow:
	3px  3px 3px #ffffff,
    -3px  3px 3px #ffffff,
     3px -3px 3px #ffffff,
    -3px -3px 3px #ffffff,
     2px  2px 1px #ffffff,
    -2px  2px 1px #ffffff,
     2px -2px 1px #ffffff,
    -2px -2px 1px #ffffff,
	 2px  0px 1px #ffffff,
    -2px  0px 1px #ffffff,
     2px -0px 1px #ffffff,
    -3px -0px 1px #ffffff,
		-1px -1px 0 #ffffff, -1px 0 0 #ffffff, -1px 1px 0 #ffffff,
                  0 -1px 0 #ffffff,                  0 1px 0 #ffffff,
                1px -1px 0 #ffffff,  1px 0 0 #ffffff,  1px 1px 0 #ffffff;
}
.sp-slide div.sltext p.text2 {
    margin-top: 0px;
    padding-left: 10px;
    font-size: 17px;
    font-weight: bold;
    color: #222;
    line-height: 1.8;
    letter-spacing: 0.01em;
    transition: .3s;
    text-align: left;
    text-shadow:
	3px  3px 3px #ffffff,
    -3px  3px 3px #ffffff,
     3px -3px 3px #ffffff,
    -3px -3px 3px #ffffff,
     2px  2px 1px #ffffff,
    -2px  2px 1px #ffffff,
     2px -2px 1px #ffffff,
    -2px -2px 1px #ffffff,
	 2px  0px 1px #ffffff,
    -2px  0px 1px #ffffff,
     2px -0px 1px #ffffff,
    -3px -0px 1px #ffffff,
		-1px -1px 0 #ffffff, -1px 0 0 #ffffff, -1px 1px 0 #ffffff,
                  0 -1px 0 #ffffff,                  0 1px 0 #ffffff,
                1px -1px 0 #ffffff,  1px 0 0 #ffffff,  1px 1px 0 #ffffff;
}

@media screen and (min-width: 640px) {
    
    #header_text{
		font-size: 13px;
	}
	
    
    .sp-slide div.sltext p.title {
        font-size: 46px;
        padding-top: 30px;
        padding-left: 30px;
        text-align: left;
        letter-spacing: 0.1em;
    }
    
    .sp-slide div.sltext p.title2 {
        font-size: 46px;
        padding-top: 50px;
        padding-left: 30px;
        text-align: left;
        letter-spacing: 0.1em;
    }
    
    .sp-slide div.sltext p.text {
        margin-top: 10px;
        padding-left: 30px;
        font-size: 20px;
        text-align: left;
        letter-spacing: 0.05em;
    }
    .sp-slide div.sltext p.text2 {
        margin-top: 10px;
        padding-left: 30px;
        font-size: 26px;
        text-align: left;
        letter-spacing: 0.05em;
    }
}

/* PC */
@media screen and (min-width: 920px) {
    .sp-slide div.sltext p.title {
        font-size: 56px;
        padding-top: 40px;
        padding-left: 60px;
        text-align: left;
    }
    .sp-slide div.sltext p.title2 {
        font-size: 56px;
        padding-top: 30px;
        padding-left: 40px;
        text-align: left;
    }
    .sp-slide div.sltext p.text {
        margin-top: 10px;
        padding-left: 60px;
        font-size: 24px;
        text-align: left;
    }
    .sp-slide div.sltext p.text2 {
        margin-top: 10px;
        padding-left: 45px;
        font-size: 28px;
        text-align: left;
    }
}


/* ------------------------------------------------------------------------------------ */
/* etc...										*/
/* ------------------------------------------------------------------------------------ */
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
 .clearfix {display: inline-block;}
 

.pagetop {
	display: none;
	position: fixed;
	bottom: 80px;
	right: 50px;
    width: 50px;
    z-index: 10;
}
@media screen and (min-width: 920px) {
    .pagetop {
        display: none;
        position: fixed;
        bottom: 50px;
        right: 50px;
        width: 50px;
    }

}

/* ------------------------------------------
  BUTTON DESIGN
--------------------------------------------- */

.btn,
a.btn,
button.btn {
    font-size: 13px;
    font-weight: normal;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    padding: 10px 20px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #212529;
    border-radius: 5px;
    display: none;
}

.btn--header,
a.btn--header {
    color: #fff;
    background-color: #004098;
    float: right;
    margin: 23px 20px 0 5px;
}
.btn--header:hover,
a.btn--header:hover {
    color: #fff;
    background: #0057CC;
}


.btn2,
a.btn2,
button.btn2 {
    font-size: 13px;
    font-weight: normal;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    width: 100%;
    padding: 20px 0;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #212529;
    border-radius: 10px;
}

.btn--eshop,
a.btn--eshop {
    color: #fff;
    background-color: #004098;
    margin: 0 0 0 0;
    font-size: 13px;
}
.btn--eshop:hover,
a.btn--eshop:hover {
    color: #fff;
    background: #0057CC;
}
.btn--eshop i{
    margin-left: 10px;
}

.btn--hape,
a.btn--hape {
    color: #fff;
    background-color: #F4750D;
    margin: 0 0 0 0;
    font-size: 13px;
}
.btn--hape:hover,
a.btn--hape:hover {
    color: #fff;
    background: #F58A32;
}
.btn--hape i{
    margin-left: 10px;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    .logo {
        padding: 10px 10px 0 10px;
        float: left;
    }
    .logo img{
        height: 35px;
        transition: .3s;
    }
    .membership{
        float: left;
        padding: 4px 10px 0 10px;
        display: block;
        width: 260px;
        transition: .3s;
    }
    .membership-eshop{
        float: left;
        padding: 4px 0 0 10px !important;
        display: block;
        width: 113px;
        transition: .3s;
    }
	.membership-smile{
        float: left;
        padding: 4px 10px 0 0 !important;
        display: block;
        width: 200px;
        transition: .3s;
    }
    .eyecatch_pc{
        display: block;
    }
    .eyecatch_sp{
        display: none;
    }
    
    
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 1160px) {
    #himage{
        margin-top: 160px;
    }
    #articles-scroll{
        background-color: rgba(255,255,255,1);
        height: 160px;
    }
    
    header {
        overflow: hidden;
    }
    #header_box{
        height: 80px;
    }
    
    .logo {
        padding: 25px 10px 0 20px;
        float: left;
    }
    
    .logo img{
        height: 35px;
        transition: .3s;
    }
    .header_txt{
        padding: 30px 0 0 10px;
        display:block;
    }
    .membership{
        float: left;
        padding: 12px 10px 0 10px;
        display: block;
        width: auto;
        transition: .3s;
    }
	.membership-eshop{
        float: left;
        padding: 12px 0 0 10px !important;
        display: block;
        width: auto;
        transition: .3s;
    }
	.membership-smile{
        float: left;
        padding: 12px 10px 0 0 !important;
        display: block;
        width: auto;
        transition: .3s;
    }
	
	
	
    .header_tel{
        padding: 28px 10px 0 10px;
        display:block;
    }
    .btn,
    a.btn,
    button.btn {
            display:block;
    }
    
    
    .btn--eshop,
    a.btn--eshop {
        font-size: 18px;
    }
    .btn--hape,
    a.btn--hape {
        font-size: 18px;
    }
    
    .products_pc{
        display: block;
    }
    .products_sp{
        display: none;
    }

}


/*メニューをページ下部に固定*/
#sp-fixed-menu{
   position: fixed;
   width: 100%;
   bottom: 0px;
   font-size: 0;
   opacity: 0.9;
   z-index: 99;
}

/*メニューを横並びにする*/
#sp-fixed-menu ul{
   display: flex;
   list-style: none;
   padding:0;
   margin:0;
   width:100%;
}

#sp-fixed-menu li{
   justify-content: center;
   align-items: center;
   width: 50%;
   padding:0;
   margin:0;
   font-size: 14px;
   border-right: 1px solid #fff;
}

/*左側メニューを緑色に*/
#sp-fixed-menu li:first-child{
   background: #2E942C;
}

/*左側メニューをオレンジ色に*/
#sp-fixed-menu li:last-child{
   background: #F58021;
}

/*ボタンを調整*/
#sp-fixed-menu li a{
    color: #fff;
    text-align: center;
    display:block;
    width: 100%;
    padding:15px 10px;
    box-sizing: border-box;
    text-decoration: none;
    vertical-align:middle;
}

#sp-fixed-menu li img{
    vertical-align:top;
    margin-right: 7px;
    padding-top: 4px;
    height: 17px;
}


/*PCの場合にはメニューを表示させない*/
@media (min-width: 768px) {
   .for-sp{
      display:none;
    }
}



/* フッター
------------------------------------------------------------*/

footer{
	padding: 0;
	text-align: center;
	font-size: 12px;
    margin: 0 auto;
    overflow: hidden;
}

footer .inner{
    margin: 0 auto;
    max-width: 1200px;
    padding: 0 10px;
    overflow: hidden;
}


address{
    width: 100%;
    padding:20px 0;
    text-align: center;
    font-style: normal;
    
}

address p{
    overflow: hidden;
    vertical-align: middle;
    margin-top: 10px;
    color: #333333;
    text-align: center;
    font-size: 15px;
    line-height: 1.7em;
    letter-spacing: 0.03em;
    
}


.company_name{
    display: block;
    font-weight: bold;
    font-size: 18px;
    margin: 10px 0 5px 0;
    width: 100%;
    float: left;
}

.faddr{
    display: block;
    font-size: 14px;
    margin: 0 0 0 0;
    width: 100%;
    float: left;
}

address img{
    margin-right: 0;
}

.footer_txt{
    float: left;
    width: 100%;
    padding: 0 0 2px 0;
    color: #003F98;
    font-size: 13px;
    text-align: center;
}
.logoimg{
    float: left;
    width: 100%;
    text-align: center;
    margin: 0 auto;
}

.logoimg img{
    vertical-align:middle;
}



.logo_f{
    margin-top: 0;
}

#line_banner_pc{
        display: none;
    }
#line_banner_sp{
        display: block;
    }
    


#fnav{
    width: 100%;
    padding:20px 0;
    list-style: none;
    overflow: hidden;
    margin-top: 0px;
}


#fnav li {
    text-align: center;
    float: left;
    padding:0px 0px;
    width: 100%;
    box-sizing: border-box;
    position: relative;
}

#fnav li:last-child{
        border-bottom: 1px dotted #CCCCCC;
    }

#fnav li a {
    display:block;
    text-decoration:none;
    color:#222222;
    padding:15px 0;
    margin:0 0 0 0;
    font-weight:normal;
    border-top: 1px dotted #CCCCCC;
    position: relative;
    font-size: 14px;
}

#fnav li a:hover{
    color:#004098;
    text-decoration: none;
}


footer p.copyright{
    display:inline-block;
    width: 100%;
    margin: 0 0 70px 0;
    text-align: center;
    padding:0;
}


small{
	font-size: 12px;
    color:#666666;
}



#fmenu{
    width: 100%;
    padding:0px 0;
    background: #004098;
}


#fmenu ul{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
}
#fmenu li {
    text-align: center;
    float: left;
    padding: 0 0;
    width: 100%;
    box-sizing: border-box;
    height: auto;

}

#fmenu li:last-child{
        border-bottom: 1px dotted #CCCCCC;
    }

#fmenu li a {
    color:#FFFFFF;
    font-size: 14px;
    display:block;
    text-decoration:none;
    padding:15px 0;
    margin:0 0 0 0;
    font-weight:normal;
    border-top: 1px dotted #CCCCCC;
    position: relative;
    
}
#fmenu li a:hover{
    color:#FFFF00;
    text-decoration: none;
}


/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    
    #fmenu{
        width: 100%;
        padding:20px 0;
        background: #004098;
    }


    #fmenu ul{
        margin: 0 auto;
        max-width: 1200px;
        overflow: hidden;
        list-style: none;
    }
    #fmenu li {
        width: calc(100%/5);
        text-align: center;
        float: left;
        padding: 0 28px;
        border-top: none;
        border-right: 1px dotted white;
        height: 26px;
    }
    
    #fmenu li:last-child{
        border-bottom: none;
        border-right:none;
    }
    

    #fmenu li a {
        text-decoration: none;
        color: #FFF;
        font-size: 14px;
        letter-spacing: 0.02em;
        border: none;
        padding: 0;
    }

    address{
        float: left;
        width: 50%;
        padding:20px 0 0 0;
        text-align: left;
        font-style: normal;
        box-sizing: border-box;
    }

    address p{
        vertical-align: middle;
        margin-top: 10px;
        text-align: left;
    }

    address img{
        float: left;
        margin-right: 20px;
    }
    .company_name{
        margin: 0px 0 5px 0;
    }
    
    #line_banner_pc{
        display: block;
        float: right;
        width: 50%;
        padding:0px 0;
        list-style: none;
        overflow: hidden;
        margin-top: 25px;
        box-sizing: border-box;
    }
    
    #line_banner_pc img{
        width: 100%;
        max-width: 600px;
    }

    
    #line_banner_sp{
        display: none;
    }
    
    
    
    #fnav{
        float: right;
        width: 50%;
        padding:20px 0 10px 0;
        list-style: none;
        overflow: hidden;
        margin-top: 0px;
        box-sizing: border-box;
    }
    
    
    #fnav li {
        width: auto;
        text-align: center;
        float: left;
        padding: 0 25px;
        border-left: 1px solid #999999;
        border-top: none;
        margin-bottom: 10px;
    }
    
    #fnav li:last-child{
        border-right: 1px solid #999999;
        border-bottom: none;
    }
    

    #fnav li a {
        text-decoration: none;
        color: #333;
        font-size: 14px;
        font-weight: 400;
        letter-spacing: 0.02em;
        border: none;
        padding: 0;
    }
    
    
    .footer_txt{
        text-align: left;
    }
    .logo_f{
        margin-top: 10px;
    }
    
    footer p.copyright{
        text-align: right;
        margin: 0 0 20px 0;
    }

}



/* ------------------------------------------
  RESPONSIVE NAV STYLES
--------------------------------------------- */


/* sec_top_message
------------------------------------------------------------*/

#sec_top_message{
    margin:0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_top_message .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 30px 10px 0 10px;
    position: relative;
    background: #FFF;
    box-sizing: border-box;
}

#sec_top_message .inner .msg_img01{
	position: absolute;
	top:40px;
	right: 20px;
	z-index: 1;
	opacity: 0.2;
}

#sec_top_message .inner .msg_img02{
	position: absolute;
	top:40px;
	left: 20px;
	z-index: 1;
	opacity: 0.2;
}
#sec_top_message .inner .msg_img03{
	position: absolute;
	top:150px;
	left: 0;
	z-index: 1;
	opacity: 0.2;
}
#sec_top_message .inner .msg_img04{
	position: absolute;
	top:150px;
	right: 0;
	z-index: 1;
	opacity: 0.2;
}

#sec_top_message .inner .msg_img01 img{
	width: 100px;
}
#sec_top_message .inner .msg_img02 img{
	width: 100px;
}
#sec_top_message .inner .msg_img03 img{
	width: 60px;
}
#sec_top_message .inner .msg_img04 img{
	width: 80px;
}


#sec_top_message .message_box{
	position:relative;
    text-align: center;
    max-width: 1200px;
    margin: 20px auto;
	padding: 10px 0;
	background: url("../images/top/message_bg.png") center top no-repeat;
	background-size: contain;
	z-index: 2;
}

#sec_top_message .message_box p{
	font-size: 16px;
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
	font-weight: 700;
	color: #1F1F1F;
	margin-bottom: 10px;
	line-height: 1.7;
	text-shadow:
	3px  3px 3px #ffffff,
    -3px  3px 3px #ffffff,
     3px -3px 3px #ffffff,
    -3px -3px 3px #ffffff,
     2px  2px 1px #ffffff,
    -2px  2px 1px #ffffff,
     2px -2px 1px #ffffff,
    -2px -2px 1px #ffffff,
	 2px  0px 1px #ffffff,
    -2px  0px 1px #ffffff,
     2px -0px 1px #ffffff,
    -3px -0px 1px #ffffff,
		-1px -1px 0 #ffffff, -1px 0 0 #ffffff, -1px 1px 0 #ffffff,
                  0 -1px 0 #ffffff,                  0 1px 0 #ffffff,
                1px -1px 0 #ffffff,  1px 0 0 #ffffff,  1px 1px 0 #ffffff;
}

#sec_top_message .message_box p span{
	color: #e84d6b;
	font-size: 120%;
} 

#sec_top_message .message_box p.soudan{
	font-size: 16px;
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
	font-weight: 700;
	color: #1F1F1F;
	text-shadow:
	3px  3px 3px #ffffff,
    -3px  3px 3px #ffffff,
     3px -3px 3px #ffffff,
    -3px -3px 3px #ffffff,
     2px  2px 1px #ffffff,
    -2px  2px 1px #ffffff,
     2px -2px 1px #ffffff,
    -2px -2px 1px #ffffff,
	 2px  0px 1px #ffffff,
    -2px  0px 1px #ffffff,
     2px -0px 1px #ffffff,
    -3px -0px 1px #ffffff,
		-1px -1px 0 #ffffff, -1px 0 0 #ffffff, -1px 1px 0 #ffffff,
                  0 -1px 0 #ffffff,                  0 1px 0 #ffffff,
                1px -1px 0 #ffffff,  1px 0 0 #ffffff,  1px 1px 0 #ffffff;
}


.msg_container {
	padding: 0 0px;
	display: flex;
	justify-content:space-around;
	flex-wrap:wrap; 
}

.msg_container .box {
    color: #fff;
    font-weight: bold;
    text-align: center;
    background-color: #3CB371;
    width: 140px;
	height: 140px;
	border-radius: 50%;
	position: relative;
	margin: 0 5px 40px 5px;
	line-height: 1.2;
	font-size: 18px;
}

.msg_container a{
	text-decoration: none;
}

.msg_container .box01{
	background-color: #00B259;
}
.msg_container .box02{
	background-color: #00A3D9;
}
.msg_container .box03{
	background-color: #F72F61;
}
.msg_container .box04{
	background-color: #D18556;
}

.msg_container .box::before{
    content: "";
    position: absolute;
    top: 145px;
    left: calc( 50% - 10px );
    border: 10px solid transparent;
    border-top: 10px solid #555;   /* 好みで色を変えてください */
	transition: .2s;
}

.msg_container .box:hover:before{
	top: 150px;
	transition: .2s;
}

.msg_container .box01::before{
	border-top: 10px solid #00B259;   /* 好みで色を変えてください */  
}
.msg_container .box02::before{
	border-top: 10px solid #00A3D9;   /* 好みで色を変えてください */  
}
.msg_container .box03::before{
	border-top: 10px solid #F72F61;   /* 好みで色を変えてください */  
}
.msg_container .box04::before{
	border-top: 10px solid #D18556;   /* 好みで色を変えてください */  
}

.msg_container .box img{
	display: block;
	margin: 0 auto;
}

.msg_container .box01 img{
	padding-top: 25px;
	padding-bottom: 15px;
	width: 80px;
}
.msg_container .box02 img{
	padding-top: 10px;
	padding-bottom: 8px;
	width: 60px;
}
.msg_container .box03 img{
	padding-top: 10px;
	padding-bottom: 10px;
	width: 60px;
}
.msg_container .box04 img{
	padding-top: 20px;
	padding-bottom: 12px;
	width: 80px;
}




.msg_container2 {
	padding: 0 0px;
	display: flex;
	justify-content:space-around;
	flex-wrap:wrap; 
}

.msg_container2 .box {
    color: #fff;
    font-weight: bold;
    text-align: center;
    background-color: #FFF;
    width: 140px;
	height: 140px;
	border-radius: 50%;
	position: relative;
	margin: 0 5px 20px 5px;
	line-height: 1.2;
	font-size: 18px;
}

.msg_container2 a{
	text-decoration: none;
}




.msg_container2 .box img{
	display: block;
	margin: 0 auto;
}

.msg_container2 .box01 img{
	padding-top: 0;
	padding-bottom: 15px;
	width: 140px;
}
.msg_container2 .box02 img{
	padding-top: 0;
	padding-bottom: 8px;
	width: 140px;
}
.msg_container2 .box03 img{
	padding-top: 0;
	padding-bottom: 10px;
	width: 140px;
}
.msg_container2 .box04 img{
	padding-top: 0;
	padding-bottom: 12px;
	width: 140px;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
	#sec_top_message .inner .msg_img01{
		position: absolute;
		top:40px;
		right: 20px;
		opacity: 1;
	}

	#sec_top_message .inner .msg_img02{
		position: absolute;
		top:40px;
		left: 20px;
		opacity: 1;
	}
	#sec_top_message .inner .msg_img03{
		position: absolute;
		top:160px;
		left: 0;
		opacity: 1;
	}
	#sec_top_message .inner .msg_img04{
		position: absolute;
		top:180px;
		right: 0;
		opacity: 1;
	}

	
	#sec_top_message .inner .msg_img01 img{
		width: 120px;
	}
	#sec_top_message .inner .msg_img02 img{
		width: 120px;
	}
	#sec_top_message .inner .msg_img03 img{
		width: 60px;
	}
	#sec_top_message .inner .msg_img04 img{
		width: 80px;
	}
    
}


/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_top_message{
        padding: 0 0;
        margin-top: 0px;
        z-index: 2;
    }
    #sec_top_message .inner{
        padding: 30px;
        box-sizing: border-box;
    }
    
	#sec_top_message .message_box{
		
	}
    #sec_top_message .message_box p{
        font-size: 28px;
    }
	#sec_top_message .message_box p.soudan{
        font-size: 24px;
    }
    
	#sec_top_message .inner .msg_img01{
		position: absolute;
		top:40px;
		right: 5%;
		opacity: 1;
	}

	#sec_top_message .inner .msg_img02{
		position: absolute;
		top:40px;
		left: 5%;
		opacity: 1;
	}
	#sec_top_message .inner .msg_img03{
		position: absolute;
		top:230px;
		left: 0;
		opacity: 1;
	}
	#sec_top_message .inner .msg_img04{
		position: absolute;
		top:230px;
		right: 0;
		opacity: 1;
	}

	
	#sec_top_message .inner .msg_img01 img{
		width: auto;
	}
	#sec_top_message .inner .msg_img02 img{
		width: auto;
	}
	#sec_top_message .inner .msg_img03 img{
		width: auto;
	}
	#sec_top_message .inner .msg_img04 img{
		width: auto;
	}
	.msg_container {
		padding: 0 20px;
	}
	.msg_container .box {
		width: 240px;
		height: 240px;
		font-size: 26px;
		margin: 0 10px 50px 10px;
	}
	.msg_container .box::before{
		content: "";
		position: absolute;
		top: 250px;
		left: calc( 50% - 20px );
		border: 20px solid transparent;
		border-top: 20px solid #555;   /* 好みで色を変えてください */
		transition: .2s;
	}

	.msg_container .box:hover:before{
		top: 255px;
		transition: .2s;
	}
	.msg_container .box01::before{
		border-top: 20px solid #00B259;   /* 好みで色を変えてください */  
	}
	.msg_container .box02::before{
		border-top: 20px solid #00A3D9;   /* 好みで色を変えてください */  
	}
	.msg_container .box03::before{
		border-top: 20px solid #F72F61;   /* 好みで色を変えてください */  
	}
	.msg_container .box04::before{
		border-top: 20px solid #D18556;   /* 好みで色を変えてください */  
	}
	.msg_container .box01 img{
		padding-top: 55px;
		padding-bottom: 30px;
		width: auto;
	}
	.msg_container .box02 img{
		padding-top: 30px;
		padding-bottom: 10px;
		width: auto;
	}
	.msg_container .box03 img{
		padding-top: 25px;
		padding-bottom: 12px;
		width: auto;
	}
	.msg_container .box04 img{
		padding-top: 50px;
		padding-bottom: 20px;
		width: auto;
	}

	
	.msg_container2 {
		padding: 0 20px;
	}
	.msg_container2 .box {
		width: 240px;
		height: 200px;
		font-size: 26px;
		margin: 0 10px 50px 10px;
	}
	
	.msg_container2 .box01 img{
		padding-top: 0;
		padding-bottom: 30px;
		width: auto;
	}
	.msg_container2 .box02 img{
		padding-top: 0;
		padding-bottom: 10px;
		width: auto;
	}
	.msg_container2 .box03 img{
		padding-top: 0;
		padding-bottom: 12px;
		width: auto;
	}
	.msg_container2 .box04 img{
		padding-top: 0;
		padding-bottom: 20px;
		width: auto;
	}
	
	
}






/* sec_top_partner
------------------------------------------------------------*/

#sec_top_partner{
    margin:0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_top_partner .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 0 10px;
    position: relative;
    background: #FFF;
    box-sizing: border-box;
}

#sec_top_partner h1 {
    width: 100%;
    margin: 10px 0 50px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
}

#sec_top_partner h1:before {
  content: '';
  position: absolute;
  bottom: -25px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}

#sec_top_partner h1 span{
    display: block;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.02em;
    color: #111111;
    line-height: 14px;
    padding-top: 0px;
}

#sec_top_partner .partner_box{
    text-align: center;
    max-width: 900px;
    margin: 0 auto;
}

#sec_top_partner .partner_box img{
    width: 100%;
    max-width: 900px;
}

#sec_top_partner .partner_box p{
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0.05em;
    margin-top: 10px;
}

#sec_top_partner .partner_btn{
    text-align: center;
    max-width: 1200px;
    margin: 50px auto 0 auto;
    overflow: hidden;
    
}
#sec_top_partner .partner_btn .bnt_eshop{
    float: left;
    width: 100%;
    margin-bottom: 15px;
}
#sec_top_partner .partner_btn .bnt_hape{
    float: left;
    width: 100%;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_top_partner h1:before {
      bottom: -30px;
    }
    #sec_top_partner h1 {
        font-size: 40px;
    }
    
    #sec_top_partner h1 span{
        font-size: 16px;
    }
    
}


/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_top_partner{
        padding: 0 0;
        margin-top: 0px;
        z-index: 2;
    }
    #sec_top_partner .inner{
        padding: 30px;
        box-sizing: border-box;
    }
    
    #sec_top_partner h1 {
        font-size: 50px;
    }
    #sec_top_partner h1 span{
        font-size: 18px;
    }
    
    #sec_top_partner .partner_box p{
        font-size: 16px;
    }

    #sec_top_partner .partner_btn .bnt_eshop{
        float: left;
        width: 50%;
        margin-bottom: 0;
    }
    #sec_top_partner .partner_btn .bnt_hape{
        float: left;
        width: 50%;
    }
    .btn2,
    a.btn2,
    button.btn2 {
        width: 90%;
    }
}




/* sec_top_electric
------------------------------------------------------------*/

#sec_top_electric{
    margin:0;
    margin-top: 30px;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_top_electric .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 0 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_top_electric h1 {
    position: relative;
    display: inline-block;
    padding: 0 0 0 55px;
    color: #004098;
    text-align: left;
    width: 100%;
    font-size: 30px;
}

#sec_top_electric h1:before {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40px;
  height: 3px;
  background-color: #004098;
}

#sec_top_electric h1:before {
  left:0;
}


#sec_top_electric h2 {
    width: 100%;
    margin: 0 0 20px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 22px;
    color: #1F1F1F;
    box-sizing: border-box;
    line-height: 1.7em;
    font-weight: bold;
    letter-spacing: 0.1em;
}

#sec_top_electric .inner_in{
    margin: 0 auto;
    max-width: 1200px;
    text-align: left;
    overflow: hidden;
}


#sec_top_electric .inner .electric_box{
    width: 100%;
    box-sizing: border-box;
    display: inline-block;
    text-align: center;
    transition: 1.0s;
    background: url("../images/top/top_electric_bg.png") right 40px no-repeat;
    background-size:90%;
    transition: 1.0s;
}

 #sec_top_electric .inner .electric_box_msg{
    position: relative;
    padding: 30px 20px;
    z-index: 2;
    background: #E5ECF4;
    margin-top: 60px;
}


#sec_top_electric .inner .electric_box_msg p{
    width: 100%;
    font-size: 14px;
    line-height: 2em;
    letter-spacing: 0.02em;
    box-sizing: border-box;
    font-weight: normal;
    text-align: left;
}

#sec_top_electric .inner .btn_more{
    width: 100%;
    margin: 15px 0 0 0;
}

.btn3,
a.btn3,
button.btn3 {
    font-size: 13px;
    font-weight: normal;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    width: 100%;
    padding: 10px 0 10px 0;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #212529;
    border-radius: 10px;
}

.btn--more-blue,
a.btn--more-blue {
    color: #fff;
    background-color: #004098;
    margin: 0 0 0 0;
    font-size: 14px;
}
.btn--more-blue:hover,
a.btn--more-blue:hover {
    color: #fff;
    background: #0057CC;
}
.btn--more-blue i{
    margin-left: 10px;
}


.btn--more-blue_b,
a.btn--more-blue_b {
    color: #fff;
    background-color: #004098;
    margin: 0 0 0 0;
    font-size: 14px;
    font-weight: bold;
}
.btn--more-blue_b:hover,
a.btn--more-blue_b:hover {
    color: #fff;
    background: #0057CC;
}
.btn--more-blue_b i{
    margin-left: 10px;
}



.btn--more-orange,
a.btn--more-orange {
    color: #fff;
    background-color: #EB6120;
    margin: 0 0 0 0;
    font-size: 14px;
}
.btn--more-orange:hover,
a.btn--more-orange:hover {
    color: #fff;
    background: #EE7E48;
}
.btn--more-orange i{
    margin-left: 10px;
}


#sec_top_electric .inner .electric_box_sp{
    display: none;
}
#sec_top_electric .inner .electric_box_sp img{
    width: 100%;
}





/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_top_electric{
        padding: 0 0;
        margin-top: 40px;
        z-index: 2;
    }
    #sec_top_electric .inner{
        padding: 70px 0;
        box-sizing: border-box;
    }
    
    #sec_top_electric h1 {
        width: 70%;
        font-size: 38px;
    }
    #sec_top_electric h2 {
        font-size: 28px;
    }
    
    #sec_top_electric .inner_in{
        position: relative;
        
    }
    
    
    
    #sec_top_electric .inner .electric_box{
        float:right;
        width: calc(100% - 400px + 40px);
        margin-top: 0px;
        background-size:auto;
    }
    
    #sec_top_electric .inner .electric_box_msg{
        position: relative;
        padding: 50px 60px;
        z-index: 1;
    }
    
    
    #sec_top_electric .inner .electric_box_msg p{
        width: 100%;
        font-size: 16px;
        line-height: 2em;
        letter-spacing: 0.02em;
        box-sizing: border-box;
        font-weight: normal;
        padding-bottom: 15px;
    }

    .btn3,
    a.btn3,
    button.btn3 {
        padding: 8px 0 10px 0;
    }

    
    .btn--more-blue,
    a.btn--more-blue {
        font-size: 22px;
    }
    
    .btn--more-blue_b,
    a.btn--more-blue_b {
        font-size: 22px;
    }
    
    .btn--more-orange,
    a.btn--more-orange {
        font-size: 22px;
    }
    
    
    #sec_top_electric .inner .electric_box_sp{
        position: absolute;
        left: 0;
        top: 0;
        width: 400px;
        z-index: 0;
        display: block;

    }
    #sec_top_electric .inner .electric_box_sp img{
        margin-bottom: 25px;
    }
    
}



/* sec_top_electric_lineup
------------------------------------------------------------*/

#sec_top_electric_lineup{
    margin:0;
    margin-top: 30px;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_line.jpg") left top repeat;
}

#sec_top_electric_lineup .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_top_electric_lineup h1 {
    width: 100%;
    margin: 0px 0 50px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 24px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
}

#sec_top_electric_lineup h1:before {
  content: '';
  position: absolute;
  bottom: -25px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}

#sec_top_electric_lineup h1 span{
    display: block;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.02em;
    color: #111111;
    line-height: 14px;
    padding-top: 0px;
}


#sec_top_electric_lineup .lineup_box{
    text-align: center;
    max-width: 1200px;
    margin: 20px auto 0 auto;
    overflow: hidden;
    
}
#sec_top_electric_lineup .lineup_box .btn_ecocute{
    float: left;
    width: 100%;
    margin-bottom: 15px;
    
}

#sec_top_electric_lineup .lineup_box .btn_ecocute img {
    width: 100%;
    max-width: 570px;
    transition: all 0.3s;
  }

#sec_top_electric_lineup .lineup_box .btn_ecocute img:hover {
	opacity: 0.8;
    
}

.lineup_btn {
    font-size: 13px;
    font-weight: normal;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    width: 90%;
    padding: 15px 0 15px 0;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #212529;
    border-radius: 100px;
    color: #fff;
}

#sec_top_electric_lineup .inner .btn_more{
    width: 100%;
    margin: 20px 0 0 0;
    text-align: center;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_top_electric_lineup h1:before {
      bottom: -30px;
    }
    #sec_top_electric_lineup h1 {
        font-size: 40px;
    }
    
    #sec_top_electric_lineup h1 span{
        font-size: 16px;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_top_electric_lineup{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_top_electric_lineup .inner{
        padding: 50px 0 100px 0;
        box-sizing: border-box;
        
    }
    
    #sec_top_electric_lineup h1 {
        font-size: 50px;
    }
    #sec_top_electric_lineup h1 span{
        font-size: 18px;
    }
    
    #sec_top_electric_lineup .lineup_box .btn_ecocute{
        float: left;
        width: 50%;
        margin-bottom: 0;
        padding: 0 10px;
        box-sizing: border-box;
    }
    
    #sec_top_electric_lineup .lineup_box .btn_ecocute img {
        width: 100%;
        max-width: 570px;
      }
    
    #sec_top_electric_lineup .inner .btn_more{
        margin: 60px 0 0 0;
    }
    .lineup_btn {
        width: 60%;
    }
    
    
}




/* sec_top_renovation
------------------------------------------------------------*/

#sec_top_renovation{
    margin:0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_top_renovation .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_top_renovation h1 {
    position: relative;
    display: inline-block;
    padding: 0 0 0 55px;
    color: #004098;
    text-align: left;
    width: 100%;
    font-size: 26px;
}

#sec_top_renovation h1:before {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40px;
  height: 3px;
  background-color: #004098;
}

#sec_top_renovation h1:before {
  left:0;
}


#sec_top_renovation h2 {
    width: 100%;
    margin: 0 0 20px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 22px;
    color: #1F1F1F;
    box-sizing: border-box;
    line-height: 1.7em;
    font-weight: bold;
    letter-spacing: 0.1em;
}

#sec_top_renovation .inner_in{
    margin: 0 auto;
    max-width: 1200px;
    text-align: left;
    overflow: hidden;
}


#sec_top_renovation .inner .renovation_box{
    width: 100%;
    box-sizing: border-box;
    display: inline-block;
    text-align: center;
    transition: 1.0s;
    background: url("../images/top/top_renovation_bg.png") 70% 40px no-repeat;
    background-size:90%;
    transition: 1.0s;
}

 #sec_top_renovation .inner .renovation_box_msg{
    position: relative;
    padding: 30px 20px;
    z-index: 2;
    background: #E5ECF4;
    margin-top: 60px;
}


#sec_top_renovation .inner .renovation_box_msg p{
    width: 100%;
    font-size: 14px;
    line-height: 2em;
    letter-spacing: 0.02em;
    box-sizing: border-box;
    font-weight: normal;
    text-align: left;
}

#sec_top_renovation .inner .btn_more{
    width: 100%;
    margin: 15px 0 0 0;
}


#sec_top_renovation .inner .renovation_box_sp{
    display: none;
}
#sec_top_renovation .inner .renovation_box_sp img{
    width: 100%;
}





/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_top_renovation{
        padding: 0 0;
        z-index: 2;
    }
    #sec_top_renovation .inner{
        padding: 70px 0;
        box-sizing: border-box;
    }
    
    #sec_top_renovation h1 {
        width: 100%;
        font-size: 38px;
    }
    #sec_top_renovation h2 {
        font-size: 28px;
    }
    #sec_top_renovation .inner_in{
        position: relative;
        
    }
    
    
    
    #sec_top_renovation .inner .renovation_box{
        float:left;
        width: calc(100% - 400px + 40px);
        margin-top: 0px;
        background-size:auto;
    }
    
    #sec_top_renovation .inner .renovation_box_msg{
        position: relative;
        padding: 50px 60px;
        z-index: 1;
    }
    
    
    #sec_top_renovation .inner .renovation_box_msg p{
        width: 100%;
        font-size: 16px;
        line-height: 2em;
        letter-spacing: 0.02em;
        box-sizing: border-box;
        font-weight: normal;
        padding-bottom: 15px;
    }
    
    #sec_top_renovation .inner .renovation_box_sp{
        position: absolute;
        right: 0;
        top: 0;
        width: 400px;
        z-index: 0;
        display: block;

    }
    #sec_top_renovation .inner .renovation_box_sp img{
        margin-bottom: 25px;
    }
    
}


/* sec_top_renovation_lineup
------------------------------------------------------------*/

#sec_top_renovation_lineup{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_line.jpg") left top repeat;
}

#sec_top_renovation_lineup .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_top_renovation_lineup h1 {
    width: 100%;
    margin: 0px 0 50px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 24px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
}

#sec_top_renovation_lineup h1:before {
  content: '';
  position: absolute;
  bottom: -25px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}

#sec_top_renovation_lineup h1 span{
    display: block;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.02em;
    color: #111111;
    line-height: 14px;
    padding-top: 0px;
}


#sec_top_renovation_lineup .lineup_box{
    text-align: center;
    max-width: 1200px;
    margin: 20px auto 0 auto;
    overflow: hidden;
    
}
#sec_top_renovation_lineup .lineup_box .btn_renovation{
    float: left;
    width: 100%;
    margin-bottom: 15px;
    transition: all 0.3s;
}





#sec_top_renovation_lineup .inner .btn_more{
    width: 100%;
    margin: 20px 0 0 0;
    text-align: center;
}

.renovation_lineup_btn {
    
}

.renovation_lineup_btn h2{
    color: #FFFFFF;
    text-align: left;
    font-size: 18px;
    font-weight: bold;
    position: relative;
    display: inline-block;
    width: 100%;
    margin-bottom: 0px;
    padding-bottom: 5px;
    letter-spacing: 0.05em;
}


.renovation_lineup_btn h2:before {
  content: '';
  position: absolute;
  bottom: -5px;
  display: inline-block;
  width: 100%;
  height: 0px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #FFFF26;
}

.renovation_lineup_btn h2.smode{
    padding-top: 22px;
    text-align: center;
}


.renovation_lineup_btn .en_name{
    background: #ffffff;
    padding: 3px 0;
    width: 100%;
    color: #003F98;
    font-weight: bold;
    border-radius: 2px;
}


.renovation_lineup_btn p{
    color: #FFFFFF;
    text-align: left;
}


#sec_top_renovation_lineup .lineup_box .btn_renovation:hover {
	opacity: 0.8;
    
}
.renovation_lineup_btn .rb_left{
     width: 70%;
    height: 140px;
    float: left;
    background: #004098;
    border-radius: 8px 0 0 8px;
    padding: 10px 10px;
    box-sizing: border-box;
    
}
.renovation_lineup_btn .rb_right{
   
    width: 30%;
    float: right;
    background: #FFFFFF;
    border-radius: 0 8px 8px 0;
}

.renovation_lineup_btn .rb_right img{
    vertical-align: bottom;
    border-radius: 0 8px 8px 0;
    object-fit: cover;
    height: 140px;
}



.rb_left p{
    padding: 0 5px;
    background: linear-gradient(transparent 0, transparent 97%, #CCC 100%);
    background-size: 100% 2.5em;
    line-height: 2.5em;
    font-size: 12px;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_top_renovation_lineup h1:before {
      bottom: -30px;
    }
    #sec_top_renovation_lineup h1 {
        font-size: 40px;
    }
    
    #sec_top_renovation_lineup h1 span{
        font-size: 16px;
    }
    
    
    .renovation_lineup_btn h2{
        color: #FFFFFF;
        text-align: left;
        font-size: 26px;
        font-weight: bold;
        position: relative;
        display: inline-block;
        width: 100%;
        margin-bottom: 0px;
        letter-spacing: 0.05em;
        padding-bottom: 5px;
    }

    .renovation_lineup_btn h2:before {
      content: '';
      position: absolute;
      bottom: -5px;
      display: inline-block;
      width: 100%;
      height: 0px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%);
      background-color: #FFFF26;
    }
    
    
    .renovation_lineup_btn .rb_left{
         width: calc(100% - 250px);
        height: 160px;
        float: left;
        background: #004098;
        border-radius: 8px 0 0 8px;
        padding: 10px 20px;
        box-sizing: border-box;

    }
    .renovation_lineup_btn .rb_right{

        width: 250px;
        float: right;
        background: #FFFFFF;
        border-radius: 0 8px 8px 0;
    }

    .renovation_lineup_btn .rb_right img{
        vertical-align: bottom;
        border-radius: 0 8px 8px 0;
        object-fit: cover;
        height: 160px;
    }

    .rb_left p{
        padding: 0 5px;
        background: linear-gradient(transparent 0, transparent 97%, #CCC 100%);
        background-size: 100% 2.5em;
        line-height: 2.5em;
        font-size: 14px;
    }
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_top_renovation_lineup{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_top_renovation_lineup .inner{
        padding: 50px 0 60px 0;
        box-sizing: border-box;
        
    }
    
    #sec_top_renovation_lineup h1 {
        font-size: 50px;
    }
    #sec_top_renovation_lineup h1 span{
        font-size: 18px;
    }
    
    #sec_top_renovation_lineup .lineup_box .btn_renovation{
        float: left;
        width: 50%;
        margin-bottom: 40px;
        padding: 0 20px;
        box-sizing: border-box;
    }
    
    #sec_top_renovation_lineup .lineup_box .btn_renovation img {
        width: 100%;
        
    }
    
    .renovation_lineup_btn .rb_left{
        width: 320px;
        height: 160px;
        float: left;
        background: #004098;
        border-radius: 8px 0 0 8px;
        padding: 10px 20px;
        box-sizing: border-box;

    }
    .renovation_lineup_btn .rb_right{
        width: calc(100% - 320px);

        float: right;
        background: #FFFFFF;
        border-radius: 0 8px 8px 0;
    }

    .renovation_lineup_btn .rb_right img{
        vertical-align: bottom;
        border-radius: 0 8px 8px 0;
        object-fit: cover;
        height: 160px;
    }

    
    
    #sec_top_renovation_lineup .inner .btn_more{
        margin: 20px 0 0 0;
    }
    
    
}





/* sec_top_news
------------------------------------------------------------*/

#sec_top_news{
    margin:0;
    margin-top: 30px;
    padding:0 0 0 0;
    text-align: left;
}

#sec_top_news .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_top_news h1 {
    width: 100%;
    margin: 0px 0 50px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 24px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
}

#sec_top_news h1:before {
  content: '';
  position: absolute;
  bottom: -25px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}

#sec_top_news h1 span{
    display: block;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.02em;
    color: #111111;
    line-height: 14px;
    padding-top: 0px;
}

#sec_top_news ul{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    border-top: 1px solid #CCCCCC;
    margin-top: 25px;
    margin-bottom: 20px;
}

#sec_top_news ul li{
    border-bottom: 1px solid #CCCCCC;
    padding: 15px 0 10px 0;
    overflow: hidden;
}

.idate_box{
    float: left;
    width: auto;
    height: 30px;
    padding-top: 3px;
    font-weight: bold;
    font-size: 13px;
    margin-left: 10px;
}


.itext_box{
    float: left;
    width: 100%;
    box-sizing: border-box;
    letter-spacing: 0.05em;
    font-size: 14px;
    font-weight: 500;
    margin-top: 5px;
    padding: 0 10px;
}
.itext_box a{
    text-decoration: none;
    color: #333333;
}

#sec_top_news p a{
    text-decoration: none;
    color: #333333;
}

#sec_top_news p a:hover{
    text-decoration: none;
    color: #003F98;
}

#sec_top_news .info_icon01{
    float: left;
    width: 100px;
    display: block;
    background: #333333;
    color:#FFF;
    font-weight: 500;
    letter-spacing: 0.01em;
    font-size: 12px;
    line-height: 2;
    padding: 0px 0;
    margin: 3px 20px 0 20px;
    border-radius: 30px;
    text-align: center;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
#sec_top_news .info_icon02{
    float: left;
    width: 100px;
    display: block;
    background: #FF4000;
    color:#FFF;
    font-weight: 500;
    letter-spacing: 0.01em;
    font-size: 12px;
    line-height: 2;
    padding: 0px 0;
    margin: 3px 20px 0 20px;
    border-radius: 30px;
    text-align: center;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
#sec_top_news .info_icon03{
    float: left;
    width: 100px;
    display: block;
    background: #004098;
    color:#FFF;
    font-weight: 500;
    letter-spacing: 0.01em;
    font-size: 12px;
    line-height: 2;
    padding: 0px 0;
    margin: 3px 20px 0 20px;
    border-radius: 30px;
    text-align: center;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

#sec_top_news .inner .btn_more{
    width: 100%;
    margin: 20px 0 0 0;
    text-align: center;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_top_news h1:before {
      bottom: -30px;
    }
    #sec_top_news h1 {
        font-size: 40px;
    }
    
    #sec_top_news h1 span{
        font-size: 16px;
    }
    
    #sec_top_news ul li{
        padding: 25px 0 20px 0;
    }
    
    .idate_box{
        float: left;
        width: auto;
        text-align: left;
        margin-left: 10px;
        font-size: 14px;
    }

    .itext_box{
        float: left;
        width: 100%;
        margin-top: 10px;
        font-size: 15px;
        box-sizing: border-box;
    }
    
    
    
    
}
/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_top_news{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_top_news .inner{
        padding: 50px 20px 60px 20px;
        box-sizing: border-box;
        
    }
    
    #sec_top_news h1 {
        font-size: 50px;
    }
    #sec_top_news h1 span{
        font-size: 18px;
    }
    
    .idate_box{
        float: left;
        width: 120px;
        text-align: right;
    }

    .itext_box{
        float: left;
        width: calc(100% - 300px);
        margin-top: 0px;
    }
    
    #sec_top_news .inner .btn_more{
        margin: 60px 0 0 0;
    }
    
}





/* sec_top_renovation_house
------------------------------------------------------------*/

#sec_top_renovation_house{
    margin:0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_top_renovation_house .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_top_renovation_house h1 {
    position: relative;
    display: inline-block;
    padding: 0 0 0 55px;
    color: #004098;
    text-align: left;
    width: 100%;
    font-size: 26px;
}

#sec_top_renovation_house h1:before {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40px;
  height: 3px;
  background-color: #004098;
}

#sec_top_renovation_house h1:before {
  left:0;
}


#sec_top_renovation_house h2 {
    width: 100%;
    margin: 0 0 20px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 22px;
    color: #1F1F1F;
    box-sizing: border-box;
    line-height: 1.7em;
    font-weight: bold;
    letter-spacing: 0.1em;
}

#sec_top_renovation_house .inner_in{
    margin: 0 auto;
    max-width: 1200px;
    text-align: left;
    overflow: hidden;
}


#sec_top_renovation_house .inner .renovation_box{
    width: 100%;
    box-sizing: border-box;
    display: inline-block;
    text-align: center;
    transition: 1.0s;
    background: url("../images/top/top_renovation_house_bg.png") 70% 40px no-repeat;
    background-size:90%;
    transition: 1.0s;
}

 #sec_top_renovation_house .inner .renovation_box_msg{
    position: relative;
    padding: 30px 20px;
    z-index: 2;
    background: #E5ECF4;
    margin-top: 60px;
}


#sec_top_renovation_house .inner .renovation_box_msg p{
    width: 100%;
    font-size: 14px;
    line-height: 2em;
    letter-spacing: 0.02em;
    box-sizing: border-box;
    font-weight: normal;
    text-align: left;
}

#sec_top_renovation_house .inner .btn_more{
    width: 100%;
    margin: 15px 0 0 0;
}


#sec_top_renovation_house .inner .renovation_box_sp{
    display: none;
}
#sec_top_renovation_house .inner .renovation_box_sp img{
    width: 100%;
}





/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_top_renovation_house{
        padding: 0 0;
        z-index: 2;
    }
    #sec_top_renovation_house .inner{
        padding: 70px 0;
        box-sizing: border-box;
    }
    
    #sec_top_renovation_house h1 {
        width: 100%;
        font-size: 38px;
    }
    #sec_top_renovation_house h2 {
        font-size: 28px;
    }
    #sec_top_renovation_house .inner_in{
        position: relative;
        
    }
    
    
    
    #sec_top_renovation_house .inner .renovation_box{
        float:left;
        width: calc(100% - 400px + 40px);
        margin-top: 0px;
        background-size:auto;
    }
    
    #sec_top_renovation_house .inner .renovation_box_msg{
        position: relative;
        padding: 50px 60px;
        z-index: 1;
    }
    
    
    #sec_top_renovation_house .inner .renovation_box_msg p{
        width: 100%;
        font-size: 16px;
        line-height: 2em;
        letter-spacing: 0.02em;
        box-sizing: border-box;
        font-weight: normal;
        padding-bottom: 15px;
    }
    
    #sec_top_renovation_house .inner .renovation_box_sp{
        position: absolute;
        right: 0;
        top: 0;
        width: 400px;
        z-index: 0;
        display: block;

    }
    #sec_top_renovation_house .inner .renovation_box_sp img{
        margin-bottom: 25px;
    }
    
}





/* sec_top_paint
------------------------------------------------------------*/

#sec_top_paint{
    margin:0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_line2.jpg") left top repeat;
}

#sec_top_paint .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_top_paint h1 {
    position: relative;
    display: inline-block;
    padding: 0 0 0 55px;
    color: #EB601F;
    text-align: left;
    width: 100%;
    font-size: 26px;
}

#sec_top_paint h1:before {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40px;
  height: 3px;
  background-color: #EB601F;
}

#sec_top_paint h1:before {
  left:0;
}


#sec_top_paint h2 {
    width: 100%;
    margin: 0 0 20px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 22px;
    color: #1F1F1F;
    box-sizing: border-box;
    line-height: 1.7em;
    font-weight: bold;
    letter-spacing: 0.1em;
}

#sec_top_paint .inner_in{
    margin: 0 auto;
    max-width: 1200px;
    text-align: left;
    overflow: hidden;
}


#sec_top_paint .inner .renovation_box{
    width: 100%;
    box-sizing: border-box;
    display: inline-block;
    text-align: center;
    transition: 1.0s;
    background: url("../images/top/sec_top_paint_bg.png") 70% 40px no-repeat;
    background-size:90%;
    transition: 1.0s;
}

 #sec_top_paint .inner .renovation_box_msg{
    position: relative;
    padding: 30px 20px;
    z-index: 2;
    background: #FFFFFF;
    margin-top: 60px;
}


#sec_top_paint .inner .renovation_box_msg p{
    width: 100%;
    font-size: 14px;
    line-height: 2em;
    letter-spacing: 0.02em;
    box-sizing: border-box;
    font-weight: normal;
    text-align: left;
}

#sec_top_paint .inner .btn_more{
    width: 100%;
    margin: 15px 0 0 0;
}


#sec_top_paint .inner .renovation_box_sp{
    display: none;
}
#sec_top_paint .inner .renovation_box_sp img{
    width: 100%;
}





/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_top_paint{
        padding: 0 0;
        z-index: 2;
    }
    #sec_top_paint .inner{
        padding: 70px 0;
        box-sizing: border-box;
    }
    
    #sec_top_paint h1 {
        width: 100%;
        font-size: 38px;
    }
    #sec_top_paint h2 {
        font-size: 28px;
    }
    #sec_top_paint .inner_in{
        position: relative;
        
    }
    
    
    
    #sec_top_paint .inner .renovation_box{
        float:left;
        width: calc(100% - 400px + 40px);
        margin-top: 0px;
        background-size:auto;
    }
    
    #sec_top_paint .inner .renovation_box_msg{
        position: relative;
        padding: 50px 60px;
        z-index: 1;
    }
    
    
    #sec_top_paint .inner .renovation_box_msg p{
        width: 100%;
        font-size: 16px;
        line-height: 2em;
        letter-spacing: 0.02em;
        box-sizing: border-box;
        font-weight: normal;
        padding-bottom: 15px;
    }
    
    #sec_top_paint .inner .renovation_box_sp{
        position: absolute;
        right: 0;
        top: 0;
        width: 400px;
        z-index: 0;
        display: block;

    }
    #sec_top_paint .inner .renovation_box_sp img{
        margin-bottom: 25px;
    }
    
}



/* sec_banner_box
------------------------------------------------------------*/

#sec_banner_box{
    margin:0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_banner_box .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 20px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_banner_box .bnr_works{
    float: left;
    width: 50%;
    padding: 0 5px 0 0;
    box-sizing: border-box;
}
#sec_banner_box .bnr_photogram{
    float: left;
    width: 50%;
    padding: 0 0 0 5px;
    box-sizing: border-box;
    text-align: right;
}

#sec_banner_box .bnr_works img{
    width: 100%;
    max-width: 570px;
}
#sec_banner_box .bnr_photogram img{
    width: 100%;
    max-width: 570px;
}

#sec_banner_box .bnr_works img:hover {
	opacity: 0.8;
}
#sec_banner_box .bnr_photogram img:hover {
	opacity: 0.8;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    #sec_banner_box .bnr_works{
        padding: 0 10px 0 0;
    }
    #sec_banner_box .bnr_photogram{
        padding: 0 0 0 10px;
    }
}


/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_banner_box{
        padding: 0 0;
        z-index: 2;
    }
    #sec_banner_box .inner{
        padding: 50px 0 50px 0;
        box-sizing: border-box;
    }
    
    #sec_banner_box .bnr_works{
        padding: 0 20px 0 0;
    }
    #sec_banner_box .bnr_photogram{
        padding: 0 0 0 20px;
    }

    
}



/* sec_contact
------------------------------------------------------------*/

#sec_contact{
    margin:0;
    padding:0 0 30px 0;
    text-align: left;
    background: url("../images/common/bg_line.jpg") left top repeat;
}

#sec_contact .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 0 10px;
    position: relative;
    box-sizing: border-box;
}
#sec_contact h1 {
    width: 100%;
    margin: 0px 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 24px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
}

#sec_contact h1:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}

#sec_contact .inner b{
	color: #053374;
}

#sec_contact p.con_txt {
    width: 100%;
    font-size: 14px;
    text-align: center;
}

#sec_contact .bnr_contact{
    float: left;
    width: 100%;
    padding: 0 0 0 0;
    box-sizing: border-box;
    margin-top: 20px;
}
#sec_contact .bnr_tel{
    float: left;
    width: 100%;
    padding: 0 0 0 0;
    box-sizing: border-box;
    text-align: right;
    margin-top: 20px;
}


.btn_con,
a.btn_con,
button.btn_con {
    font-size: 13px;
    font-weight: normal;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    width: 100%;
    padding: 20px 0 20px 0;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.05em;
    color: #212529;
    border-radius: 10px;
    font-weight: bold;
    
}

.btn--contact,
a.btn--contact {
    color: #fff;
    background-color: #004098;
    margin: 0px 0 0 0;
    font-size: 14px;
}
.btn--contact:hover,
a.btn--contact:hover {
    color: #fff;
    background: #0057CC;
}
.btn--contact img{
    vertical-align:top;
    margin-right: 10px;
    padding-top: 4px;
    height: 15px;
}

.btn--tel,
a.btn--tel {
    color: #fff;
    background-color: #EB6120;
    margin: 0px 0 0 0;
    font-size: 14px;
}
.btn--tel:hover,
a.btn--tel:hover {
    color: #fff;
    background: #EE7E48;
}
.btn--tel img{
    vertical-align:top;
    margin-right: 10px;
    padding-top: 4px;
    height: 15px;
    
}




/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_contact h1:before {
      bottom: -10px;
    }
    #sec_contact h1 {
        font-size: 32px;
    }
    #sec_contact p.con_txt {
        font-size: 16px;
    }
    
    #sec_contact .bnr_contact{
        margin-top: 40px;
        padding: 0 5px 0 0;
    }
    #sec_contact .bnr_tel{
        margin-top: 40px;
        padding: 0 0 0 5px;
    }
    
    #sec_contact .bnr_contact{
        padding: 0 10px 0 0;
        width: 50%;
    }
    #sec_contact .bnr_tel{
        padding: 0 0 0 10px;
        width: 50%;
    }
    
    .btn_con,
    a.btn_con,
    button.btn_con {
        padding: 15px 0 17px 0;
    }
    
    .btn--contact,
    a.btn--contact {
        font-size: 18px;
    }
    
    .btn--tel,
    a.btn--tel {
        font-size: 18px;
    }
    
    .btn--contact img{
        height: 20px;
        padding-top: 6px;
    }
    .btn--tel img{
        height: 20px;
        padding-top: 6px;
    }

}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_contact{
        padding: 0 0;
        z-index: 2;
    }
    #sec_contact .inner{
        padding: 30px 0 50px 0;
        box-sizing: border-box;
    }
    #sec_contact h1 {
        font-size: 38px;
    }
    #sec_contact h1:before {
      bottom: -15px;
    }
    #sec_contact p.con_txt {
        font-size: 18px;
    }
    
    #sec_contact .bnr_contact{
        padding: 0 20px 0 0;
    }
    #sec_contact .bnr_tel{
        padding: 0 0 0 20px;
    }
    
    .btn_con,
    a.btn_con,
    button.btn_con {
        padding: 20px 0 22px 0;
    }

    
    .btn--contact,
    a.btn--contact {
        font-size: 34px;
    }
    
    .btn--tel,
    a.btn--tel {
        font-size: 34px;
    }
    .btn--contact img{
        height: auto;
        padding-top: 12px;
    }
    .btn--tel img{
        height: auto;
        padding-top: 11px;
    }
    
}


#himage_bnr{
    z-index: 2;
    position: absolute;
    max-width: 100%;
    right: 20px;
    top:62%;
}

#himage_bnr img{
    max-width: 140px;
    transition: .3s;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 600px) {
 
    #himage_bnr{
        z-index: 2;
        position: absolute;
        max-width: 100%;
        right: 40px;
        top:62%;
    }

    #himage_bnr img{
        max-width: 180px;
        transition: .3s;
    }
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 769px) {
 
    #himage_bnr{
        z-index: 2;
        position: absolute;
        max-width: 100%;
        right: 40px;
        top:50%;
    }

    #himage_bnr img{
        max-width: 180px;
        transition: .3s;
    }
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    
    #himage_bnr{
        z-index: 2;
        position: absolute;
        max-width: 100%;
        right: 40px;
        top:40%;
    }
    #himage_bnr img{
        max-width: 180px;
        transition: .3s;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 1160px) {
    
    #himage_bnr{
        z-index: 2;
        position: absolute;
        max-width: 100%;
        right: 40px;
        top:40%;
    }
    #himage_bnr img{
        max-width: 270px;
        transition: .3s;
    }
    
}


#headsub{
    z-index: 1;
    background: #FFFFFF;
    overflow: hidden;
    margin-top: 60px;
    background: url("../images/common/headsub_bg.jpg") center top repeat;
    height: 100px;
    background-size: cover;
}


#headsub h1 {
    width: 100%;
    margin: 17px 0 0 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    
}


#headsub h1 span{
    display: block;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.02em;
    color: #003F98;
    line-height: 14px;
    padding-top: 0px;
    font-family: "Lato";
}



/*  画面サイズが920pxまで  */
@media screen and (min-width: 1160px) {
    #headsub{
        margin-top: 150px;
        height: 200px;
    }
    
    #headsub h1 {
        margin: 40px 0 0 0;
        font-size: 40px;
    }
    #headsub h1 span{
        padding-top: 10px;
        font-size: 30px;
    }
    
}



#headsub_s{
    z-index: 1;
    background: #FFFFFF;
    overflow: hidden;
    margin-top: 60px;
    background: url("../images/common/headsub_bg.jpg") center top repeat;
    height: 100px;
    background-size: cover;
}


#headsub_s h1 {
    width: 100%;
    margin: 17px 0 0 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    
}


#headsub_s h1 span{
    display: block;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.02em;
    color: #003F98;
    line-height: 14px;
    padding-top: 0px;
    font-family: "Lato";
}



/*  画面サイズが920pxまで  */
@media screen and (min-width: 1160px) {
    #headsub_s{
        margin-top: 150px;
        height: 150px;
    }
    
    #headsub_s h1 {
        margin: 15px 0 0 0;
        font-size: 40px;
    }
    #headsub_s h1 span{
        padding-top: 10px;
        font-size: 30px;
    }
    
}


 
/*-----------  #breadcrumb  -----------*/

#breadcrumb{
	width:100%;
    height: 45px;
    background: #EDEDED;
    /*margin-bottom: 10px;*/
    padding:0 0 0 0;
    
}


#breadcrumb .inner{
    margin: 0 auto;
    padding: 0 10px;
    max-width: 1200px;
    box-sizing: border-box;
}

#breadcrumb ul{
    width: 100%;
    padding:0;
    text-align:left;
    color: #222222;
    font-size:12px;
    letter-spacing: 1px;
    padding-top: 10px;
    list-style: none;
}

#breadcrumb ul i{
    font-size:14px;
    margin:0 0 0 10px;
}

#breadcrumb ul li {
	margin: 0 10px 0 0;
	text-align: center;
	float: left;
}

#breadcrumb ul li a{
	text-decoration:none;
	color:#333333;
	padding:10px 0 10px 0;
	margin:0 0 0 0;
	font-weight:normal; 
    font-size: 12px;
}


/*  画面サイズが920pxまで  */
@media screen and (min-width: 640px) {
    #breadcrumb .inner{
        padding: 0 10px;
    }
    
    #breadcrumb ul li a{
        font-size: 14px;
    }
    
}


/* sec_greeting
------------------------------------------------------------*/

#sec_greeting{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_greeting .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_greeting h1 {
    width: 100%;
    margin: 0 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_greeting h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 85px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.greeting_box{
    overflow: hidden;
}
.greeting_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.greeting_box_left p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0.04em;
}


.greeting_box_right{
    float: right;
    width: 100%;
    text-align: center;
}

.greeting_box_right p{
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    margin-top: 10px;
}

.greeting_box_right p.concierge{
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    margin-top: 3px;
	line-height: 1.4;
	color: #7a4395;
}
.greeting_box_right p.concierge a{
	color: #7a4395;
	text-decoration: none;
}
.greeting_box_right p.concierge a:hover{
	color: #9051af;
	text-decoration: underline;
}

.greeting_box_right img{
    width: 100%;
    max-width: 500px;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_greeting h1:before {
        bottom: -5px;
        width: 120px;
        height: 5px;
    }
    #sec_greeting h1 {
        font-size: 38px;
    }
    
    .greeting_box_left p{
        font-size: 14px;
    }

    .greeting_box_left{
        float: left;
        width: calc(100% - 45%);
        padding-right: 30px;
        box-sizing: border-box;   
    }

    .greeting_box_right{
        float: right;
        width: 45%;
        max-width: 400px;
        text-align: right;
        margin-top: 30px;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_greeting{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_greeting .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_greeting h1 {
        font-size: 38px;
    }
    .greeting_box_left p{
        font-size: 16px;
    }
    .greeting_box_left{
        float: left;
        width: calc(100% - 500px);
        padding-right: 50px;
        box-sizing: border-box;

    }
    .greeting_box_right{
        float: right;
        width: 500px;
        max-width: 500px;
        text-align: right;
        margin-top: 30px;
    }
    
}




/* sec_koudou
------------------------------------------------------------*/

#sec_koudou{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_koudou .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_koudou h1 {
    width: 100%;
    margin: 0 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_koudou h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 110px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}



.koudou_box{
    overflow: hidden;
}
.koudou_box p{
    font-size: 18px;
    margin-bottom: 10px;
}

.koudou_box ol {
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding:0;
    box-sizing: border-box;
}

.koudou_box ol li {
    width: 100%;
    position: relative;
    line-height: 1.5em;
    padding: 10px 0 10px 40px;
    color: #002D6A;
    font-size: 14px;
    font-weight: normal;
    box-sizing: border-box;
}

.koudou_box ol li:before{
    /* 以下数字をつける */
    position: absolute;
    counter-increment: number;
    content: counter(number);
    /*数字のデザイン変える*/
    display:inline-block;
    background: #003F98;
    color: white;
    font-family: 'Avenir','Arial Black','Arial',sans-serif;
    font-weight:bold;
    font-size: 20px;
    left: 0;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    /*以下上下中央寄せのため*/
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}


#sec_koudou .koudou_box p.pmain{
    font-size: 20px;
    font-weight: bold;
    text-align: left;
    margin-bottom: 0;
}
#sec_koudou .koudou_box p.psub{
    font-size: 14px;
    font-weight: normal;
    text-align: left;
    margin-bottom: 10px;
}




/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_koudou h1:before {
        bottom: -5px;
        width: 160px;
        height: 5px;
    }
    #sec_koudou h1 {
        font-size: 38px;
    }
    
   .koudou_box p{
        font-size: 20px;
    }
    
    .koudou_box ol li {
        font-size: 18px;
        padding: 15px 0 15px 70px;
        font-weight: bold;
    }

    .koudou_box ol li:before{
        font-size: 40px;
        width: 50px;
        height: 50px;
        line-height: 50px;
    }
    #sec_koudou .koudou_box p.pmain{
        font-size: 24px;
    }
    #sec_koudou .koudou_box p.psub{
        font-size: 16px;
        margin-bottom: 20px;
    }

    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_koudou{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_koudou .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_koudou h1 {
        font-size: 38px;
    }
   .koudou_box p{
        font-size: 28px;
    }
    #sec_koudou .koudou_box p.pmain{
        font-size: 30px;
    }
    #sec_koudou .koudou_box p.psub{
        font-size: 20px;
    }

}




/* sec_kihonhoushin_img
------------------------------------------------------------*/

#sec_kihonhoushin_img{
    margin:0;
    margin-top: 0;
    padding:10px 0 10px 0;
    text-align: left;
	/* background: url("../images/common/bg_lattice.png") left top repeat; */
}

#sec_kihonhoushin_img .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 0px 10px 0px 10px;
    position: relative;
    box-sizing: border-box;
	text-align: center;
}

#sec_kihonhoushin_img .inner img{
	max-width: 100%;
}


/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_kihonhoushin_img{
        padding: 10px 0 10px 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_kihonhoushin_img .inner{
        padding: 20px 10px 0px 10px;
        box-sizing: border-box;
        
    }
    
}

/* sec_kihonhoushin
------------------------------------------------------------*/

#sec_kihonhoushin{
    margin:0;
    margin-top: 0;
    padding:20px 0 45px 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_kihonhoushin .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 0px 10px 0px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_kihonhoushin h1 {
    width: 100%;
    margin: 0 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_kihonhoushin h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 170px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.koudou_box{
    overflow: hidden;
}
.koudou_box p{
    font-size: 18px;
    margin-bottom: 10px;
}

#sec_kihonhoushin .koudou_box p.pmain{
    font-size: 20px;
    font-weight: bold;
    text-align: left;
    margin-bottom: 0;
}
#sec_kihonhoushin .koudou_box p.psub{
    font-size: 14px;
    font-weight: normal;
    text-align: left;
    margin-bottom: 10px;
}


.h1-triangle {
    position: relative;
    width: 300px;
    height: 80px;
    margin: 0 auto;
    padding: 40px 0 10px 0;
}

.triangle{
    position: absolute;
    left: -35px;
    width: 0;
    height: 0;
    border: 35px solid transparent;
    border-right: 20px solid #0D4E96;
    filter: drop-shadow(6px 6px 0 rgba(0,0,0,0.3));
}

.triangle2{
    position: absolute;
    right: -35px;
    width: 0;
    height: 0;
    border: 35px solid transparent;
    border-left: 20px solid #0D4E96;
    filter: drop-shadow(6px 6px 0 rgba(0,0,0,0.3));
}

#sec_kihonhoushin h1.rinen{
    position: absolute;
    width: 260px;
    left: 20px;
    height: 70px;
    background: #0D4E96;
    text-align: center;
    line-height: 70px;
    color: #FFF;
    font-size: 26px;
    letter-spacing: 0.1em;
    font-weight: 600;
    filter: drop-shadow(6px 6px 0 rgba(0,0,0,0.3));
}

#sec_kihonhoushin .rinen_en{
    position: absolute;
    left: 0px;
    top:20px;
    font-size: 32px;
    font-weight: 600;
    font-style: italic;
    color: #F7941D;
    -moz-transform: rotate(-15deg);
	-webkit-transform: rotate(-15deg);
	-o-transform: rotate(-15deg);
	-ms-transform: rotate(-15deg);
	transform: rotate(-15deg);
    font-family: 'Qwitcher Grypen', cursive;
}

#sec_kihonhoushin h1.rinen:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 0;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

#sec_kihonhoushin .koudou_box p.r_main{
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 0;
    color: #111111;
}
#sec_kihonhoushin .koudou_box p.r_sub{
    font-size: 14px;
    font-weight: normal;
    text-align: center;
    margin-bottom: 10px;
    color: #222222;
}



/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_kihonhoushin h1:before {
        bottom: -5px;
        width: 240px;
        height: 5px;
    }
    #sec_kihonhoushin h1 {
        font-size: 38px;
    }
    
    

    .h1-triangle {
        position: relative;
        width: 600px;
        height: 80px;
        margin: 0 auto;
        padding: 40px 0 10px 0;
    }

    .triangle{
        position: absolute;
        left: 0;
        width: 0;
        height: 0;
        border: 35px solid transparent;
        border-right: 20px solid #0D4E96;
        filter: drop-shadow(6px 6px 0 rgba(0,0,0,0.3));
    }

    .triangle2{
        position: absolute;
        right: 0;
        width: 0;
        height: 0;
        border: 35px solid transparent;
        border-left: 20px solid #0D4E96;
        filter: drop-shadow(6px 6px 0 rgba(0,0,0,0.3));
    }

    #sec_kihonhoushin h1.rinen{
        position: absolute;
        width: 490px;
        left: 55px;
        height: 70px;
        background: #0D4E96;
        text-align: center;
        line-height: 70px;
        color: #FFF;
        font-size: 34px;
        letter-spacing: 0.1em;
        font-weight: 600;
        filter: drop-shadow(6px 6px 0 rgba(0,0,0,0.3));
    }

    #sec_kihonhoushin .rinen_en{
        position: absolute;
        left: 15px;
        top:0px;
        font-size: 56px;
        font-weight: 600;
        font-style: italic;
        color: #F7941D;
        -moz-transform: rotate(-15deg);
        -webkit-transform: rotate(-15deg);
        -o-transform: rotate(-15deg);
        -ms-transform: rotate(-15deg);
        transform: rotate(-15deg);
        font-family: 'Qwitcher Grypen', cursive;
    }

    #sec_kihonhoushin h1.rinen:before {
        content: '';
        position: absolute;
        bottom: -5px;
        display: inline-block;
        width: 0;
        height: 4px;
        left: 2px;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        background-color: #003F98;
        transform:skewX(-45deg);
    }


    
    
   .sec_kihonhoushin p{
        font-size: 20px;
    }
    
    #sec_kihonhoushin .koudou_box p.pmain{
        font-size: 24px;
    }
    #sec_kihonhoushin .koudou_box p.psub{
        font-size: 16px;
        margin-bottom: 20px;
    }
    #sec_kihonhoushin .koudou_box p.r_main{
        font-size: 24px;
    }
    #sec_kihonhoushin .koudou_box p.r_sub{
        font-size: 16px;
        margin-bottom: 20px;
    }
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_kihonhoushin{
        padding: 30px 0 62px 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_kihonhoushin .inner{
        padding: 20px 10px 0px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_kihonhoushin h1 {
        font-size: 38px;
    }
   .sec_kihonhoushin p{
        font-size: 28px;
    }
    
    #sec_kihonhoushin .koudou_box p.pmain{
        font-size: 30px;
    }
    #sec_kihonhoushin .koudou_box p.psub{
        font-size: 20px;
    }
    #sec_kihonhoushin .koudou_box p.r_main{
        font-size: 30px;
    }
    #sec_kihonhoushin .koudou_box p.r_sub{
        font-size: 20px;
    }
    
}



/* sec_company
------------------------------------------------------------*/

#sec_company{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_company .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_company h1 {
    width: 100%;
    margin: 0 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_company h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 110px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.company_box{
    overflow: hidden;
}

.company_box ul{
    margin-left: 50px;
    margin-bottom: 15px;
    font-size: 14px;
}

.company_box .jigyoubu{
    font-weight: bold;
}

table.tbl_company {
    border-collapse:separate;
    width: 100%;
    margin:0;
    padding: 0 0;
    color:#333333;
    box-sizing: border-box;
    
}

table.tbl_company th {
    display: block;
    text-align: left;
    margin:0 0 0 0;
    padding: 10px 10px;
    width: 100%;
    box-sizing: border-box;
    background: #003F98;
    color: #FFFFFF;
    font-weight: normal;
}

table.tbl_company td{
    display: block;
    border-top: none;
    border-bottom: none;
    text-align: left;
    margin:0 0 0 0;
    padding: 10px 10px;
    width: 100%;
    background: none;
    box-sizing: border-box;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_company h1:before {
        bottom: -5px;
        width: 160px;
        height: 5px;
    }
    #sec_company h1 {
        font-size: 38px;
    }
    
   table.tbl_company {
        border-collapse:separate;
        width:100%;
        color:#333333;
        padding: 0px;
        margin:30px 0;
        box-sizing: border-box;
        border-top:1px solid #CCC;
    }

    table.tbl_company th {
        text-align:left;
        padding:15px 0 15px 30px;
        font-size:15px;
        vertical-align:top;
        font-weight:bold;
        letter-spacing: 2px;
        width:250px !important;
        display:table-cell;
        box-sizing: border-box;
        background: none;
        color:#222222;
        border-bottom:1px solid #CCC;
    }

    table.tbl_company td{
        width: calc(100% - 250px) !important;
        text-align:center;
        padding:15px 0 15px 10px;
        line-height:1.7;
        font-size:15px;
        letter-spacing: 1px;
        background:none;
        text-align: left;
        display:table-cell;
        box-sizing: border-box;
        border-bottom:1px solid #CCC;
    }
    
    
    
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_company{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_company .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
    }
    
    #sec_company h1 {
        font-size: 38px;
    }

}



/* sec_history
------------------------------------------------------------*/

#sec_history{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_line.jpg") left top repeat;
}

#sec_history .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_history h1 {
    width: 100%;
    margin: 0 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_history h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 60px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.history_box{
    overflow: hidden;
}

.history_box ul{
    margin-left: 50px;
    margin-bottom: 15px;
    font-size: 14px;
}

table.tbl_history {
    border-collapse:separate;
    width: 100%;
    margin:0;
    padding: 0 0;
    color:#333333;
    box-sizing: border-box;
    
}

table.tbl_history th {
    display: block;
    text-align: left;
    margin:0 0 0 0;
    padding: 10px 10px;
    width: 100%;
    box-sizing: border-box;
    background: #003F98;
    color: #FFFFFF;
    font-weight: normal;
}

table.tbl_history td{
    display: block;
    border-top: none;
    border-bottom: none;
    text-align: left;
    margin:0 0 0 0;
    padding: 10px 10px;
    width: 100%;
    background: none;
    box-sizing: border-box;
}

.history_box_more{
    overflow: hidden;
    text-align: center;
    margin-top: 10px;
}
.history_box_more img{
    width: 100%;
    max-width: 1100px;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_history h1:before {
        bottom: -5px;
        width: 80px;
        height: 5px;
    }
    #sec_history h1 {
        font-size: 38px;
    }
    
   table.tbl_history {
        border-collapse:separate;
        width:100%;
        color:#333333;
        padding: 0px;
        margin:30px 0;
        box-sizing: border-box;
        border-top:1px solid #CCC;
    }

    table.tbl_history th {
        text-align:left;
        padding:15px 0 15px 30px;
        font-size:15px;
        vertical-align:top;
        font-weight:bold;
        width:250px !important;
        display:table-cell;
        box-sizing: border-box;
        background: none;
        color:#222222;
        border-bottom:1px solid #CCC;
    }

    table.tbl_history td{
        width: calc(100% - 250px) !important;
        text-align:center;
        padding:15px 0 15px 10px;
        line-height:1.7;
        font-size:15px;
        letter-spacing: 1px;
        background:none;
        text-align: left;
        display:table-cell;
        box-sizing: border-box;
        border-bottom:1px solid #CCC;
    }
    
    .history_box_more{
        margin-top: 50px;
    }
    
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_history{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_history .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
    }
    
    #sec_history h1 {
        font-size: 38px;
    }

}


/* sec_access
------------------------------------------------------------*/

#sec_access{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_access .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_access h1 {
    width: 100%;
    margin: 0 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_access h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 110px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.access_box{
    overflow: hidden;
}


table.tbl_access {
    border-collapse:separate;
    width: 100%;
    margin:0;
    padding: 0 0;
    color:#333333;
    box-sizing: border-box;
    
}

table.tbl_access th {
    display: block;
    text-align: left;
    margin:0 0 0 0;
    padding: 10px 10px;
    width: 100%;
    box-sizing: border-box;
    background: #003F98;
    color: #FFFFFF;
    font-weight: normal;
}

table.tbl_access td{
    display: block;
    border-top: none;
    border-bottom: none;
    text-align: left;
    margin:0 0 0 0;
    padding: 10px 10px;
    width: 100%;
    background: none;
    box-sizing: border-box;
}

.google-map {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    margin-top: 20px;
}
.google-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_access h1:before {
        bottom: -5px;
        width: 160px;
        height: 5px;
    }
    #sec_access h1 {
        font-size: 38px;
    }
    
   table.tbl_access {
        border-collapse:separate;
        width:100%;
        color:#333333;
        padding: 0px;
        margin:10px 0;
        box-sizing: border-box;
        border-top:1px solid #CCC;
    }

    table.tbl_access th {
        text-align:left;
        padding:15px 0 15px 30px;
        font-size:15px;
        vertical-align:top;
        font-weight:bold;
        letter-spacing: 2px;
        width:250px;
        display:table-cell;
        box-sizing: border-box;
        background: none;
        color:#222222;
        border-bottom:1px solid #CCC;
    }

    table.tbl_access td{
        width: calc(100% - 250px);
        text-align:center;
        padding:15px 0 15px 10px;
        line-height:1.7;
        font-size:15px;
        letter-spacing: 1px;
        background:none;
        text-align: left;
        display:table-cell;
        box-sizing: border-box;
        border-bottom:1px solid #CCC;
    }
    
    .google-map {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 36.25%;
        overflow: hidden;
        margin-top: 40px;
    }
    
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_access{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_access .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
    }
    
    #sec_access h1 {
        font-size: 38px;
    }

}





/* sec_eshop
------------------------------------------------------------*/

#sec_eshop{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_eshop .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_eshop h1 {
    width: 100%;
    margin: 0 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 22px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_eshop h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 100%;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.eshop_box{
    overflow: hidden;
}
.eshop_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box; 
    margin-bottom: 30px;
}
.eshop_box_left .btn_link{
    width: 100%;
    text-align: center;
    margin: 0 auto;
    margin-top: 30px;
}

.eshop_box_left .btn_link img{
    vertical-align:top;
    margin-left: 10px;
    margin-top: 2px;
    width: 100%;
    max-width: 18px;
}

.eshop_box_left p{
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 2;
}
.eshop_box_left .eshop_eye{
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}

.eshop_box_right{
    float: right;
    width: 100%;
    text-align: center;
    margin-top: 0;
}

.eshop_box_right img{
    width: 100%;
    max-width: 320px;
}


.linkout_btn {
    font-size: 13px;
    font-weight: normal;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    width: 90%;
    padding: 15px 0 15px 0;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #212529;
    border-radius: 100px;
    color: #fff;
}


.btn--more-blue_link,
a.btn--more-blue_link {
    color: #fff;
    background-color: #004098;
    margin: 0 0 0 0;
    font-size: 14px;
    font-weight: bold;
}
.btn--more-blue_link:hover,
a.btn--more-blue_link:hover {
    color: #fff;
    background: #0057CC;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_eshop h1:before {
        bottom: -10px;
        width: 100%;
        height: 5px;
    }
    #sec_eshop h1 {
        font-size: 38px;
    }
    
    .eshop_box_left p{
        font-size: 14px;
    }

    .eshop_box_left{
        float: left;
        width: calc(100% - 40%);
        padding-right: 30px;
        box-sizing: border-box;
        margin-bottom: 0px;
    }

    .eshop_box_left .eshop_eye{
        font-size: 24px;
    }
    
    .eshop_box_right{
        float: right;
        width: 40%;
        max-width: 320px;
        text-align: right;
        margin-top: 50px;
    }
    
    
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_eshop{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_eshop .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_eshop h1 {
        font-size: 38px;
    }
    .eshop_box_left p{
        font-size: 16px;
    }
    .eshop_box_left{
        float: left;
        width: calc(100% - 360px);
        padding-right: 50px;
        box-sizing: border-box;

    }
    .eshop_box_right{
        float: right;
        width: 360px;
        max-width: 360px;
        text-align: right;
    }
    .eshop_box_right img{
        width: 100%;
        max-width: 320px;
    }
    
    
    .eshop_box_left .btn_link img{
        vertical-align:top;
        margin-left: 10px;
        margin-top: 5px;
        width: 100%;
        max-width: 24px;
    }
    
    .btn--more-blue_link,
    a.btn--more-blue_link {
        font-size: 22px;
    }
    
}




/* sec_hapeesmile
------------------------------------------------------------*/

#sec_hapeesmile{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_hapeesmile .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_hapeesmile h1 {
    width: 100%;
    margin: 0 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 22px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_hapeesmile h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 100%;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.hapeesmile_box{
    overflow: hidden;
}
.hapeesmile_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;
    margin-bottom: 30px;
}

.hapeesmile_box_left .btn_link{
    width: 100%;
    text-align: center;
    margin: 0 auto;
    margin-top: 30px;
}



.hapeesmile_box_left p{
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 2;
}

.hapeesmile_box_left .btn_link img{
    vertical-align:top;
    margin-left: 10px;
    margin-top: 2px;
    width: 100%;
    max-width: 18px;
}


.hapeesmile_box_left .hapeesmile_eye{
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}

.hapeesmile_box_right{
    float: right;
    width: 100%;
    text-align: center;
    margin-top: 0;
}

.hapeesmile_box_right img{
    width: 100%;
    max-width: 320px;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_hapeesmile h1:before {
        bottom: -10px;
        width: 100%;
        height: 5px;
    }
    #sec_hapeesmile h1 {
        font-size: 38px;
    }
    
    .hapeesmile_box_left p{
        font-size: 14px;
    }

    .hapeesmile_box_left{
        float: left;
        width: calc(100% - 40%);
        padding-right: 30px;
        box-sizing: border-box;
        margin-bottom: 0px;
    }

    .hapeesmile_box_left .hapeesmile_eye{
        font-size: 24px;
    }
    
    .hapeesmile_box_right{
        float: right;
        width: 40%;
        max-width: 320px;
        text-align: right;
        margin-top: 50px;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_hapeesmile{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_hapeesmile .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_hapeesmile h1 {
        font-size: 38px;
    }
    .hapeesmile_box_left p{
        font-size: 16px;
    }
    .hapeesmile_box_left{
        float: left;
        width: calc(100% - 360px);
        padding-right: 50px;
        box-sizing: border-box;

    }
    .hapeesmile_box_right{
        float: right;
        width: 360px;
        max-width: 360px;
        text-align: right;
    }
    .hapeesmile_box_right img{
        width: 100%;
        max-width: 320px;
    }
    
    .hapeesmile_box_left .btn_link img{
        vertical-align:top;
        margin-left: 10px;
        margin-top: 5px;
        width: 100%;
        max-width: 24px;
    }
    
}





/* sec_systembus
------------------------------------------------------------*/

#sec_systembus{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_systembus .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_systembus h1 {
    width: 100%;
    margin: 0px 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 24px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
}

#sec_systembus h1:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}

#sec_systembus h2 {
    border-bottom: solid 3px #999999;
    position: relative;
    padding-bottom: 10px;
    font-size: 15px;
    margin-top: 20px;
}

#sec_systembus h2:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #003F98;
    bottom: -3px;
    width: 45%;
}



.systembus_box{
    overflow: hidden;
    margin-bottom: 40px;
}

.systembus_box_mb_none{
	margin-bottom: 0px;
}

.systembus_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box; 
    margin-bottom: 30px;
}
.systembus_box_left .btn_link{
    width: 100%;
    text-align: center;
    margin: 0 auto;
    margin-top: 30px;
}

.systembus_box_left .btn_link img{
    vertical-align:top;
    margin-left: 10px;
    margin-top: 2px;
    width: 100%;
    max-width: 18px;
}

.systembus_box_left p{
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 2;
}
.systembus_box_left .systembus_eye01{
    margin-bottom: 10px;
    font-size: 20px;
    line-height: 1.7;
    color: #FF3F00;
    font-weight: bold;
}
.systembus_box_left .systembus_eye02{
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.7;
    color: #006600;
    font-weight: bold;
    
}



.systembus_box_right{
    float: right;
    width: 100%;
    text-align: center;
    margin-top: 0;
}

.systembus_box_right img{
    width: 100%;
    max-width: 400px;
}

.systembus_osusume{
    background: #FDF0F2;
    border-radius:10px;
    margin-bottom: 20px;
    padding: 15px 15px 15px 25px;
}

.systembus_osusume ul{
    list-style:  none;
    font-size: 16px;
    font-weight: bold;
}

.systembus_osusume ul li{
    margin-bottom: 5px;
}

.systembus_osusume ul li:before {
    content:  "";     /* 空の要素作成 */
    width:  10px;               /* 幅指定 */
    height:  10px;              /* 高さ指定 */
    display:  inline-block;     /* インラインブロックにする */
    background-color: #333;  /* 背景色指定 */
    border-radius:  50%;        /* 要素を丸くする */
    position:  relative;        /* 位置調整 */
    top: 0;                  /* 位置調整 */
    margin-right: 10px;          /* 余白指定 */
}



/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_systembus h1:before {
      bottom: -10px;
    }
    #sec_systembus h1 {
        font-size: 40px;
    }
    
    #sec_systembus h2 {
        font-size: 24px;
    }
    
    .systembus_box_left p{
        font-size: 14px;
    }

    .systembus_box_left{
        float: left;
        width: calc(100% - 40%);
        padding-right: 30px;
        box-sizing: border-box;
        margin-bottom: 0px;
        margin-top: 30px;
    }

    .systembus_box_left .systembus_eye01{
        font-size: 24px;
    }
    .systembus_box_left .systembus_eye02{
        font-size: 24px;
    }
    
    .systembus_box_right{
        float: right;
        width: 40%;
        max-width: 400px;
        text-align: right;
        margin-top: 30px;
    }
    
    .systembus_box_right img{
        margin-bottom: 20px;
    }
    
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_systembus{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_systembus .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_systembus h1 {
        font-size: 40px;
    }
    .systembus_box_left p{
        font-size: 16px;
    }
    .systembus_box_left{
        float: left;
        width: calc(100% - 400px);
        padding-right: 70px;
        box-sizing: border-box;

    }
    .systembus_box_right{
        float: right;
        width: 400px;
        max-width: 400px;
        text-align: right;
    }
    .systembus_box_right img{
        width: 100%;
        max-width: 400px;
        margin-bottom: 20px;
    }
    
    
    
}







/* sec_systembus2
------------------------------------------------------------*/

#sec_systembus2{
    margin:0;
    margin-top: 20px;
    padding:0 0 0 0;
    text-align: left;
}

#sec_systembus2 .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 0px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_systembus2 h1 {
    width: 100%;
    margin: 0px 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 24px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
}

#sec_systembus2 h1:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}

#sec_systembus2 .pickup_box{
    overflow: hidden;
    margin-top: 30px;
}

#sec_systembus2 .pickup_box h2{
    font-size: 24px;
    font-weight: bold;
}

#sec_systembus2 .pickup_box h2 span{
    font-size: 16px;
    vertical-align:0.1em;
    margin-left: 20px;
    font-weight: 500;
    letter-spacing: 0.05em;
}


#sec_systembus2 .pickup_box .pickup_left{
    float: left;
    width: 100%;
    margin: 0 0%;
    box-sizing: border-box;
    border: 1px solid #DDDDDD;
    margin-bottom: 20px;
}

#sec_systembus2 .pickup_box .pickup_left .bland_box{
    border: 1px solid #003F98;
    width: 100%;
    text-align: center;
    padding: 10px;
    box-sizing: border-box;
}
#sec_systembus2 .pickup_box .pickup_left .products_box{
    background: #003F98;
    width: 100%;
    text-align: left;
    padding: 0px 20px 3px 20px;
    box-sizing: border-box;
    color: #FFF;
}


#sec_systembus2 .pickup_box .pickup_left .bland_box img{
    vertical-align: bottom;
}

#sec_systembus2 .pickup_box .pickup_right{
    float: right;
    width: 100%;
    margin: 0 0%;
    box-sizing: border-box;
    border: 1px solid #DDDDDD;
}

#sec_systembus2 .pickup_box .pickup_right .bland_box{
    border: 1px solid #327BBC;
    width: 100%;
    text-align: center;
    padding: 10px;
    box-sizing: border-box;
}
#sec_systembus2 .pickup_box .pickup_right .bland_box img{
    vertical-align: bottom;
}

#sec_systembus2 .pickup_box .pickup_right .products_box{
    background: #327BBC;
    width: 100%;
    text-align: left;
    padding: 0px 20px 3px 20px;
    box-sizing: border-box;
    color: #FFF;
}


#sec_systembus2 .pickup_box .detail_box{
    width: 100%;
    text-align: left;
    padding: 20px 20px 20px 20px;
    box-sizing: border-box;
    
}


#sec_systembus2 .pickup_box .detail_box .d_main{
    overflow: hidden;
    width: 100%;
}
#sec_systembus2 .pickup_box .detail_box .d_img{
    float: left;
    width: 100%;
    text-align: center;
    margin: 0 auto;
}

#sec_systembus2 .pickup_box .detail_box .d_img img{
    width: 100%;
    max-width: 100%;
    text-align: center;
    margin: 0 auto;
    
}


#sec_systembus2 .pickup_box .detail_box .d_parts{
    float: left;
    width: 100%;
    margin-top: 20px;
}

.tbl_products{
    width: 100%;
    border: 1px solid #EEEEEE;
    border-collapse:  collapse;
    margin-bottom: 15px;
}

.tbl_products th{
    background: #133191;
    text-align: center;
    color: #FFF;
    padding: 3px;
}

.tbl_products th.takara{
    background: #327BBC;
}

.tbl_products td{
    padding: 5px 10px;
    text-align: center;
}

.tbl_products td.toto_price{
    color: #333;
    font-size: 16px;
    font-weight: bold;
}
.tbl_products td.toto_price span{
	color: #FF3F00;
    font-size: 40px;
    font-weight: 900;
    line-height: 1;
	margin-left: 10px;
}

.tbl_products td.toto_price .td_left{
	float: left;
	text-align: right;
	width: 70px;
}
.tbl_products td.toto_price .td_right{
	float: right;
	text-align: left;
	width: calc( 100% - 70px );
}

.tbl_products td.toto_price img.price_off{
    vertical-align: -4px;
    margin-right: 5px;
}
.tbl_products td.toto_price img.price_off_l{
    margin-top: 5px;
    margin-right: 8px;
	width: 64px;
}

.hot_sell_unit{
    font-size: 21px !important;
	margin-left: 2px !important;
}

.tbl_products td.toto_kikan{
    color: #202020;
    font-size: 20px;
    font-weight: bold;
}
.tbl_products td.toto_kikan span{
    font-size: 42px;
    font-weight: 900;
    line-height: 46px;
}

#sec_systembus2 .pickup_box .detail_box p.catch{
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 20px;
}

#sec_systembus2 .pickup_box .detail_box p.point_title{
    background: #133191;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    color: #FFF;
    padding: 0 0 3px 0;
    margin-top: 20px;
    clear: both;
}
#sec_systembus2 .pickup_box .detail_box p.point_title2{
    background: #327BBC;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    color: #FFF;
    padding: 0 0 3px 0;
    margin-top: 20px;
    clear: both;
}
#sec_systembus2 .pickup_box .detail_box p.osusume_title{
    background: #65ab31;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    color: #FFF;
    padding: 0 0 3px 0;
    margin-top: 20px;
    clear: both;
}
#sec_systembus2 .pickup_box .detail_box p.voice_title{
    background: #ea5532;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    color: #FFF;
    padding: 0 0 3px 0;
    margin-top: 20px;
    clear: both;
}


#sec_systembus2 .pickup_box .detail_box ul{
    margin-left: 30px;
    margin-top: 10px;
}
#sec_systembus2 .pickup_box .detail_box ul li{
    font-size: 15px;
    font-weight: normal;
    margin-bottom: 3px;
}


#sec_systembus2 .option_box{
    overflow: hidden;
    margin-top: 20px;
	border-radius:10px;
    margin-bottom: 20px;
    padding: 15px 15px 15px 15px;
	background: #FDF0F2;
}

#sec_systembus2 .option_box p{
	font-size: 14px;
}

#sec_systembus2 .option_box ul{
    list-style:  none;
    font-size: 14px;
    font-weight: bold;
	margin: 5px 5px;
}

#sec_systembus2 .option_box ul li{
    margin-bottom: 0px;
}

#sec_systembus2 .option_box ul li:before {
    content:  "";     /* 空の要素作成 */
    width:  10px;               /* 幅指定 */
    height:  10px;              /* 高さ指定 */
    display:  inline-block;     /* インラインブロックにする */
    background-color: #333;  /* 背景色指定 */
    border-radius:  50%;        /* 要素を丸くする */
    position:  relative;        /* 位置調整 */
    top: 0;                  /* 位置調整 */
    margin-right: 10px;          /* 余白指定 */
}




/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_systembus2 h1:before {
      bottom: -10px;
    }
    #sec_systembus2 h1 {
        font-size: 40px;
    }
    #sec_systembus2 .pickup_box h2{
        font-size: 32px;
    }
    #sec_systembus2 .pickup_box h2 span{
        font-size: 18px;
        vertical-align:0.3em;
    }
	#sec_systembus2 .option_box{
		padding: 15px 15px 15px 25px;
	}
	
	#sec_systembus2 .option_box p{
		font-size: 16px;
	}
	#sec_systembus2 .option_box ul{
		font-size: 16px;
	}
	.tbl_products td.toto_price span{
		color: #FF3F00;
		font-size: 42px;
		line-height: 42px;
	}
	.tbl_products td.toto_price .td_left{
		float: left;
		text-align: right;
		width: 37%;
	}
	.tbl_products td.toto_price .td_right{
		float: right;
		text-align: left;
		width: 63%;
	}
	.tbl_products td.toto_price img.price_off_l{
		margin-top: 8px;
		margin-right: 10px;
		width: 64px;
	}
	
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_systembus2{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_systembus2 .inner{
        padding: 40px 20px 60px 20px;
        box-sizing: border-box;
        
    }
    
    #sec_systembus2 h1 {
        font-size: 40px;
    }
    
    
    
    #sec_systembus2 .pickup_box{
        overflow: hidden;
        margin-top: 30px;
        display: -webkit-box; /*Android4.3*/
        display: -moz-box;    /*Firefox21*/
        display: -ms-flexbox; /*IE10*/
        display: -webkit-flex; /*PC-Safari,iOS8.4*/
        display:flex;
        justify-content:space-between;
    }
    
    #sec_systembus2 .pickup_box .pickup_left{
        float: left;
        width: 49%;
        margin: 0 0;
        box-sizing: border-box;
        border: 1px solid #DDDDDD;
        
    }
    
    #sec_systembus2 .pickup_box .pickup_right{
        float: right;
        width: 49%;
        margin: 0 0;
        box-sizing: border-box;
        border: 1px solid #DDDDDD;
    }
    
    #sec_systembus2 .pickup_box .detail_box .d_img{
        float: left;
        width: 100%;
        margin-right: 20px !important;
    }

    #sec_systembus2 .pickup_box .detail_box .d_img img{
        width: 100%;
        max-width: 100%;
    }


    #sec_systembus2 .pickup_box .detail_box .d_parts{
        float: left;
        width: 30%;
        margin-top: 0px;
    }

    
}



/* sec_systembus_list
------------------------------------------------------------*/

#sec_systembus_list{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_line.jpg") left top repeat;
}

#sec_systembus_list .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_systembus_list h1 {
    width: 100%;
    margin: 0px 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 24px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
}

#sec_systembus_list h1:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}


table.tbl_products_list {
    border-collapse: collapse;
    width: 100%;
    margin-top: 20px;
}
table.tbl_products_list th{
    background: #004098;
    color: #FFF;
    text-align: center;
    padding: 10px 0;
    font-size: 16px;
    font-weight: 500;
    
}
table.tbl_products_list td{
    /* background: #FFF;*/
    padding: 15px 10px;
}
table.tbl_products_list tr{
    background: #F7F7F7;
}
table.tbl_products_list tr:nth-child(even) td {
	background: #fff;
}


table.tbl_products_list th.bland{
    width: 190px;
    
}
table.tbl_products_list th.price{
    width: 120px;
}
table.tbl_products_list th.size{
    width: 120px;
}

table.tbl_products_list td p{
    font-weight: bold;
    font-size: 18px;
    margin-left: 0;
    margin-bottom: 10px;
    line-height: 1.6;
}

table.tbl_products_list td.tp_center{
    text-align: center;
}
table.tbl_products_list td.price{
    text-align: center;
    font-weight: bold;
    font-size: 16px;
}


table.tbl_products_list ul{
    margin-left: 30px;
}
table.tbl_products_list ul li{
    margin-bottom: 0px;
    font-weight: 400;
}


table.tbl_products_list th, table.tbl_products_list td {
  border: solid 1px #DDDDDD;
  /*実線 1px 黒*/
}





table.tbl_products_list_sp {
    border-collapse: collapse;
    width: 100%;
    margin-top: 20px;
}
table.tbl_products_list_sp th{
    background: #004098;
    color: #FFF;
    text-align: center;
    padding: 10px 0;
    font-size: 14px;
    font-weight: 500;
    width: 90px;
}
table.tbl_products_list_sp td{
    /* background: #FFF;*/
    padding: 15px 10px;
    width: calc( 100% - 90px);
}
table.tbl_products_list_sp tr{
    background: #F7F7F7;
}
table.tbl_products_list_sp tr:nth-child(even) td {
	background: #fff;
}



table.tbl_products_list_sp td p{
    font-weight: bold;
    font-size: 16px;
    margin-left: 0;
    margin-bottom: 10px;
    line-height: 1.6;
}

table.tbl_products_list_sp td.tp_center{
    text-align: center;
}
table.tbl_products_list_sp td.price{
    text-align: center;
    font-weight: bold;
    font-size: 16px;
}

table.tbl_products_list_sp ul{
    margin-left: 20px;
}
table.tbl_products_list_sp ul li{
    margin-bottom: 0px;
    font-weight: 400;
    font-size: 13px;
}

table.tbl_products_list_sp th, table.tbl_products_list_sp td {
  border: solid 1px #DDDDDD;
  /*実線 1px 黒*/
}


.bland_name{
    font-size: 14px;
    width: 90%;
    font-weight: 500;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    padding: 2px 0px 3px 0px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #FFF;
    border-radius: 30px;
    background-color: #CCC;
    margin-bottom: 5px;
    letter-spacing: 0em;
}

.bland_name_toto{
    background-color: #1A338D;
}
.bland_name_panasonic{
    background-color: #041EAC;
}
.bland_name_chofu{
    background-color: #EA1F25;
}
.bland_name_lixil{
    background-color: #E75400;
}
.bland_name_takara{
    background-color: #005BAC;
}
.standard_plan{
    font-size: 13px;
    width: 100%;
    font-weight: 500;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    padding: 2px 0px 4px 0px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #FFF;
    border-radius: 5px;
    background-color: #FF4000;
    margin-top: 10px;
}
.standard_plan:hover{
    background-color: #f45e2c;
}

.standard_plan i{
    margin-left: 5px;
}


.maker_link{
    font-size: 13px;
    width: 100%;
    font-weight: 500;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    padding: 2px 0px 4px 0px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #FFF;
    border-radius: 0px;
    /* border: 1px solid #CCC; */
    background-color: #FF4000;
    margin-top: 8px;
}
.maker_link:hover{
    background-color: #f45e2c;
}

.maker_link i{
    margin-left: 5px;
}

.maker_name_toto{
    background-color: #1A338D !important;
    font-weight: bold !important;
}

.image_size_toto{
	width: 105px;
	height: 28px;
}

.maker_name_panasonic{
    /* background-color: #041EAC !important; */
    background-color: #000000 !important;
    font-weight: bold !important;
}

.image_size_panasonic{
	width: 154px;
	height: 26px;
}

.maker_name_chofu{
    background-color: #EA1F25 !important;
    font-weight: bold !important;
}

.image_size_chofu{
	width: 115px;
	height: 28px;
}

.maker_name_lixil{
    background-color: #E75400 !important;
    font-weight: bold !important;
}

.image_size_lixil{
	width: 75px;
	height: 28px;
}

.maker_name_takara{
    background-color: #005BAC !important;
    font-weight: bold !important;
}

.image_size_takara{
	width: 189px;
	height: 28px;
}

table.tbl_products_list p.products_name{
    margin: 0 0 10px; 0;
    padding: 0;
    font-size: 18px;
    
}


.products_bland_logo_box{
    position: relative;
    width: 100%;
    padding: 10px 20px;
    background: #FFFFFF;
    overflow: hidden;
    box-sizing: border-box;
    margin-top: 20px;
    margin-bottom: 10px;
}

.products_bland_logo_box img{
    padding: 10px;
}

.products_line_box{
    position: relative;
    width: 100%;
    padding: 20px;
    background: #FFFFFF;
    overflow: hidden;
    box-sizing: border-box;
    margin-top: 20px;
}

.products_line_box .maker_name {
    position: absolute;
    top: 0;
    left: 0;
    background: #1A338D;
    width: 150px;
    color: #FFF;
    text-align: center;
    padding: 2px 0;
    letter-spacing: 0.01em;
    font-weight: normal;
}

.products_line_box .upper_box{
    overflow: hidden;
}
.products_line_box .under_box{
    margin-top: 20px;
    overflow: hidden;
}


.products_line_box .plb_left{
    float: left;
    width: 100%;
}
.products_line_box .plb_left img{
    vertical-align: top;
}

.products_line_box .plb_left .plb_left01{
    float: left;
    margin-right: 10px;
    width: calc( 68% - 10px);
}

.products_line_box .plb_left .plb_left01 img{
    width: 100%;
}


.products_line_box .plb_left .plb_left02{
    float: left;
    margin-bottom: 10px;
    width: 32%;
}
.products_line_box .plb_left .plb_left02 img{
    width: 100%;
}



.products_line_box .plb_left .plb_left03{
    float: left;
    width: 32%;
}
.products_line_box .plb_left .plb_left03 img{
    width: 100%;
}

.products_line_box .plb_left .plb_left50p_1{
    float: left;
    width: calc( 50% - 5px);
    margin-right: 5px;
}
.products_line_box .plb_left .plb_left50p_2{
    float: left;
    width: calc( 50% - 5px);
    margin-left: 5px;
}
.products_line_box .plb_left .plb_left50p_1 img{
    width: 100%;
}
.products_line_box .plb_left .plb_left50p_2 img{
    width: 100%;
}



.products_line_box .plb_right{
    position: relative;
    float: left;
    width: 100%;
    margin-left: 0px;
    margin-top: 10px;
}

.products_line_box .plb_right h2{
    background: #F3F5F9;
    padding: 7px 10px;
    box-sizing: border-box;
    font-size: 16px;
}

.products_line_box .plb_right .plbr_button{
    position: relative;
    width: 100%;
    margin-top: 10px;
    box-sizing: border-box;
}


.products_line_box .plb_right h2 span{
    float: right;
    font-size: 15px;
}
.products_line_box .plb_right h2 span.price{
    float: right;
	line-height: 1.0;
}
.products_line_box .plb_right h2 span p.catnum{
    line-height: 1;
    font-size: 10px;
	text-align: right;
	background: #5272b2;
	text-align: center;
	color: #FFF;
	padding: 2px 0;
	margin-top: 2px;
}

.products_line_box .plb_right span.catalog{
    position: relative;
	display: block;
	right: 0;
	top:0;
	width: 100%;
	box-sizing: border-box;
	text-align: right;
    font-size: 10px;
	background: #5272b2;
	padding: 3px 10px 4px 10px;
	color: #FFF;
	line-height: 1.5;
	font-weight: 500;
}

.products_line_box .plb_right .plbr_box{
    padding: 10px;
    
}
.products_line_box .plb_right .plbr_box p{
    font-size: 15px;
}

.products_line_box .plb_right .plbr_box p.catch{
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 5px;
}



.btn4,
a.btn4,
button.btn4 {
    font-size: 12px;
    font-weight: bold;;
    line-height: 1;
    position: relative;
    display: inline-block;
    padding: 12px 10px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #FFF;
    border: none;
    
}

.products_line_box .plb_right .plbr_button .button_more{
    float: left;
    width: calc(50% - 5px);
}
.products_line_box .plb_right .plbr_button .button_maker{
    float: right;
    width: calc(50% - 30px);
}



.btn--orange,
a.btn--orange {
  color: #fff;
  background-color: #eb6100;
}
.btn--orange:hover,
a.btn--orange:hover {
  color: #fff;
  background: #f56500;
}





.btn--blue,
a.btn--blue {
  color: #fff;
  background-color: #1A338D;
}
.btn--blue:hover,
a.btn--blue:hover {
  color: #fff;
  background: #1A338D;
}

.btn--orange i,
.btn--blue i{
    margin-left: 5px;
}




.products_line_box .plb_under_right h3{
    background: #F3F5F9;
    padding: 7px 15px;
    box-sizing: border-box;
    font-size: 16px;
}

.products_line_box .plb_under_right .plbr_box{
    padding: 10px;
    
}
.products_line_box .plb_under_right .plbr_box p{
    font-size: 15px;
}

.products_line_box .plb_under_left h3{
    background: #F3F5F9;
    padding: 7px 15px;
    box-sizing: border-box;
    font-size: 16px;
}

.products_line_box .plb_under_left .plbr_box{
    padding: 10px;
    margin-bottom: 10px;
}
.products_line_box .plb_under_left .plbr_box p{
    font-size: 15px;
}


.products_line_box .under_box ul{
    margin-left: 20px;
}


.products_line_box .under_box {
	display: none;
}


.toggle_more::after {
    content: '\f358';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    top: 50%;
    right: 10px;
    left: auto;
    bottom: auto;
    transform: translateY(-50%);
}
.toggle_more.on-click::after{
    content: '\f35b';
}

.toggle_more01::after,
.toggle_more02::after,
.toggle_more03::after,
.toggle_more04::after,
.toggle_more05::after,
.toggle_more06::after,
.toggle_more07::after,
.toggle_more08::after,
.toggle_more09::after{
    content: '\f358';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    top: 50%;
    right: 10px;
    left: auto;
    bottom: auto;
    transform: translateY(-50%);
}
.toggle_more01.on-click::after,
.toggle_more02.on-click::after,
.toggle_more03.on-click::after,
.toggle_more04.on-click::after,
.toggle_more05.on-click::after,
.toggle_more06.on-click::after,
.toggle_more07.on-click::after,
.toggle_more08.on-click::after,
.toggle_more09.on-click::after{
    content: '\f35b';
}


.link_more::after {
    content: '\f35d';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    top: 50%;
    right: 10px;
    left: auto;
    bottom: auto;
    transform: translateY(-50%);
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_systembus_list h1:before {
      bottom: -10px;
    }
    #sec_systembus_list h1 {
        font-size: 40px;
    }
    
  
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_systembus_list{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_systembus_list .inner{
        padding: 50px 0 80px 0;
        box-sizing: border-box;
        
    }
    
    #sec_systembus_list h1 {
        font-size: 40px;
    }
   
    .products_line_box .plb_left{
        float: left;
        width: 550px;
    }
    .products_line_box .plb_right{
        position: relative;
        float: left;
        width: calc( 100% - 565px );
        margin-left: 15px;
        margin-top: 0;
    }
    
    .products_line_box .plb_right h2{
        font-size: 20px;
		padding: 7px 15px;
    }
    .products_line_box .plb_right h2 span{
        font-size: 18px;
    }
	.products_line_box .plb_right h2 span.price{
		line-height: 1.2;
	}
	
	.products_line_box .plb_right h2 span p.catnum{
		line-height: 1;
		font-size: 11px;
		text-align: right;
		background: #5272b2;
		text-align: center;
		color: #FFF;
		padding: 2px 0;
		margin-top: 2px;
	}

	
    .products_line_box .plb_right span.catalog{
		position: absolute;
		display: inline;
		right: 0;
		top:40px;
		width: auto;
		text-align: center;
		font-size: 10px;
		background: #5272b2;
		padding: 3px 10px 4px 10px;
		color: #FFF;
		line-height: 1.5;
		font-weight: 500;
	}
    .products_line_box .plb_under_left{
        float: left;
        width: 550px;
    }
    .products_line_box .plb_under_right{
        float: left;
        width: calc( 100% - 565px );
        margin-left: 15px;
        margin-top: 0;
    }
    
    .products_line_box .plb_right .plbr_button{
        position: absolute;
        width: 100%;
        top: 202px;
        box-sizing: border-box;
        margin-top: 0px;
    }
    
    .products_line_box .plb_right .plbr_button_s{
        top: 140px;
    }
    
    
    .btn4,
    a.btn4,
    button.btn4 {
        font-size: 14px;
    }
    
    
}







/* sec_renovation_works
------------------------------------------------------------*/

#sec_renovation_works{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_renovation_works .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}


#sec_renovation_works h1 {
    border-bottom: solid 3px #999999;
    position: relative;
    padding-bottom: 10px;
    font-size: 22px;
}

#sec_renovation_works h1:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #003F98;
    bottom: -3px;
    width: 25%;
}


.renovation_works-list{
  display: flex;
  margin: 35px 0 0 0;
  padding: 0;
  list-style: none;
  justify-content: space-between;
  flex-flow: row wrap;
 
}



.renovation_works-list li{
    flex: 0 0 100%;
    margin-bottom: 30px;
    text-align: center;
}

.renovation_works-list li a{
    text-decoration: none;
    color: #202020;
}



.renovation_works-list li img{
    width: 100%;
    max-width: 360px;
}
.renovation_works-list li img:hover {
	opacity: 0.8;
    
}

.renovation_works-list h2{
    font-size: 14px;
}

.renovation_works-list .works_category{
    margin: 5px 0 10px 0;
}


.category,
a.category {
    font-size: 10px;
    font-weight: normal;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    width: auto;
    padding: 2px 10px 3px 10px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #FFF;
    border-radius: 10px;
    background: #003F98;
    margin-right: 10px;
}



/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_renovation_works h1 {
        font-size: 24px;
    }
    
    .renovation_works-list h2{
        font-size: 18px;
    }
    
    .renovation_works-list li{
        flex: 0 0 31%;
        margin-bottom: 10px;
        text-align: left;
    }
    
        /* 最後のコンテンツを左寄せにする指定 */
    .renovation_works-list:after {
        content: "";
        display: block;
        width: 31%;  /* .boxに指定したwidthと同じ幅を指定する */
        height: 0;
    }

    
    .renovation_works-list li img{
        width: 100%;
        max-width: 360px;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_renovation_works{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_renovation_works .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    
    
    
}





/* sec_staff
------------------------------------------------------------*/

.staff_box{
    max-width: 320px;
    text-align: center;
    margin: 0 auto;
}


/* カードレイアウト部分をラッピングし、
Flexboxを指定"space-between"で各アイテムを均等に配置し、
最初と最後のアイテムを端に寄せます。*/
#cardlayout-wrap {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    margin: 2em auto;
    max-width: 1200px;
    width: 100%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
    margin-top: 50px;
}


/* カードレイアウト内の画像を幅いっぱいに表示 */
#cardlayout-wrap img {
    display: block;
    max-width: 100%;
    height: auto;
}


.card-figure {
    margin: 0 auto;
    padding: 0;
    text-align: center;
    width: 100%;
    height: 320px;
    max-height: 320px;
}

.card-figure_on {
    margin: 0 auto;
    padding: 0;
    text-align: center;
    position:relative;
    overflow:hidden;
    width: 100%;
    height: 320px;
    max-height: 320px;
    margin: 0 auto;

}

.card-figure_on img{
  width: 100%;
  cursor: pointer;
  position:absolute;
}
.card-figure_on img:last-child{
  top: 100%;
  transition: 0.3s;
}
.card-figure_on:hover img:last-child{
  top:0;
}

.staff-position{
    padding: 15px 10px 0 10px;
    text-align: left;
    font-size: 13px;
}

/* カードレイアウトのタイトル部分 */
.staff-name {
    padding: 0 0 5px 10px;
    color: #333;
    text-align: left;
    font-size: 24px;
    font-weight: bold;
    border-bottom: 2px solid #004098;
    margin-bottom: 5px;
}

.staff-name span{
    font-size: 12px;
    float: right;
    border-radius: 20px;
    background: #004098;
    padding: 0 12px 2px 13px;
    color: #FFF;
    font-weight: normal;
    margin-top: 12px;
}






/* カードレイアウトの説明文部分 */
.card-text-tax {
    margin: 0;
    padding: 10px 0;
    color: #222;
    text-align: left;
    font-size: 14px;
    
}

/* カードレイアウトを1カラムで配置 */
.card-list {
    margin: 0 auto;
    padding: 0;
    width: 96%;
    text-align: center;
    margin-bottom: 30px;
}

.card-list img{
    text-align: center;
    margin: 0 auto;
}

/* 画面幅768px以上の場合カードレイアウトを2カラムで配置 */
@media all and (min-width: 640px) {
    .card-list {
        width: calc(90% / 2); /* 96%幅を2で割るという指定 */
        text-align: center;
        margin: 0 auto;
        margin-bottom: 40px;
    }
    
    .card-figure {
        margin: 0 auto;
        padding: 0;
        text-align: center;
        width: 100%;
        height: calc(60vw * 0.75);
        max-height: 320px;
    }

    .card-figure_on {
        margin: 0 auto;
        padding: 0;
        text-align: center;
        position:relative;
        overflow:hidden;
        width: 100%;
        height: calc(60vw * 0.75);
        max-height: 320px;
        margin: 0 auto;

    }
    
}

/* 画面幅992px以上の場合カードレイアウトを3カラムで配置 */
@media all and (min-width: 920px) {
    .card-list {
        width: calc(86% / 3); /* 96%幅を3で割るという指定 */
        text-align: center;
        margin: 0 auto;
        margin-bottom: 50px;
        
    }
    
    /* 最後の行が3列より少ない場合左寄せにレイアウトさせる */
    #cardlayout-wrap::after{
        content: "";
        display: block;
        width: calc(86% / 3);
        
    }
    
    .card-figure {
        margin: 0 auto;
        padding: 0;
        text-align: center;
        width: 100%;
        height: calc(40vw * 0.75);
        max-height: 320px;
    }

    .card-figure_on {
        margin: 0 auto;
        padding: 0;
        text-align: center;
        position:relative;
        overflow:hidden;
        width: 100%;
        height: calc(40vw * 0.75);
        max-height: 320px;
        margin: 0 auto;

    }

    
}




/* sec_ele_merit
------------------------------------------------------------*/

#sec_ele_merit{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_ele_merit .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_ele_merit h1 {
    width: 100%;
    margin: 0 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_ele_merit h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 270px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.ele_merit_box{
    overflow: hidden;
}

.ele_merit_box p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}


#meritlayout-wrap {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    margin: 0 auto;
    max-width: 1200px;
    width: 100%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
    background: #F2F5FA;
    margin-top: 20px;
}

.ele_merit_box p.merit-text-tax {
    margin: 0;
    padding: 10px 10px;
    color: #222;
    text-align: left;
    font-size: 14px;
    background: #FFF;
}

.merit-list {
    width: 96%; /* 96%幅を3で割るという指定 */
    text-align: center;
    margin: 0 auto;
    margin-bottom: 20px;
    margin-top: 25px;
}
    

#sec_ele_merit h2{
    color: #003F98;
    font-size: 30px;
    text-align: left;
}

#sec_ele_merit h2 img{
    vertical-align: middle;
    margin-right: 10px;
}

.merit-figure {
    margin: 15px auto 20px auto;
    padding: 0;
    text-align: center;
    width: 100%;
    height: 150px;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_ele_merit h1:before {
        bottom: -5px;
        width: 400px;
        height: 5px;
    }
    #sec_ele_merit h1 {
        font-size: 38px;
    }
    
    .merit-list {
        width: calc(88% / 2); /* 96%幅を3で割るという指定 */
    }
    
    .ele_merit_box p.merit-text-tax {
        margin: 0;
        padding: 10px 15px;
        color: #222;
        text-align: left;
        font-size: 14px;
        height: 200px;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_ele_merit{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_ele_merit .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_ele_merit h1 {
        font-size: 38px;
    }
    .ele_merit_box p{
        font-size: 16px;
    }
    
    .merit-list {
        width: calc(88% / 4); /* 96%幅を3で割るという指定 */
    }
    .ele_merit_box p.merit-text-tax {
        margin: 0;
        padding: 10px 15px;
        color: #222;
        text-align: left;
        font-size: 14px;
        height: 240px;
    }
    
}



/* sec_ele_economical
------------------------------------------------------------*/

#sec_ele_economical{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_ele_economical .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_ele_economical h1 {
    width: 100%;
    margin: 0 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_ele_economical h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 250px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.economical_box{
    overflow: hidden;
}
.economical_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.economical_box_left p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}


.economical_box_left p.attent{
    font-size: 12px;
    margin: 0 0 10px 0;
}
.economical_box_left p.attent2{
    font-size: 14px;
    margin: 0 0 10px 0;
}

.economical_box_right{
    float: right;
    width: 100%;
    text-align: right;
}

.economical_box_right img{
    width: 100%;
}

.economical_box_left .economical_eye{
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}
.economical_box_left .economical_eye2{
    margin-bottom: 0px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}



.economical_box_center{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.economical_box_center p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}


.economical_box_center p.attent{
    font-size: 12px;
    margin: 0 0 10px 0;
}
.economical_box_center p.attent2{
    font-size: 14px;
    margin: 0 0 10px 0;
}
.economical_box_center .economical_eye{
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}
.economical_box_center .economical_eye2{
    margin-bottom: 0px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}



/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_ele_economical h1:before {
        bottom: -5px;
        width: 370px;
        height: 5px;
    }
    #sec_ele_economical h1 {
        font-size: 38px;
    }
    
    .economical_box_left p{
        font-size: 14px;
    }
	
    .economical_box_left{
        float: left;
        width: calc(100% - 40%);
        padding-right: 30px;
        box-sizing: border-box;   
    }

    .economical_box_right{
        float: right;
        width: 40%;
        max-width: 550px;
        text-align: right;
    }
    
    .economical_box_left .economical_eye{
        font-size: 24px;
    }
    .economical_box_center .economical_eye{
        font-size: 24px;
    }
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_ele_economical{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_ele_economical .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_ele_economical h1 {
        font-size: 38px;
    }
    .economical_box_left p{
        font-size: 16px;
    }
    .economical_box_left{
        float: left;
        width: calc(100% - 50%);
        padding-right: 30px;
        box-sizing: border-box;

    }
    .economical_box_right{
        float: right;
        width: 50%;
        max-width: 550px;
        text-align: right;
        margin-top: 50px;
    }
    
}





/* sec_ele_hapetimer
------------------------------------------------------------*/

#sec_ele_hapetimer{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_ele_hapetimer .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_ele_hapetimer h1 {
    width: 100%;
    margin: 0 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_ele_hapetimer h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 320px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.hapetimer_box{
    overflow: hidden;
}
.hapetimer_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.hapetimer_box_left p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}

.hapetimer_box_right{
    float: right;
    width: 100%;
    text-align: right;
}

.hapetimer_box_right img{
    width: 100%;
}


#sec_ele_hapetimer li{
  padding-left: 30px;
  text-indent: 0;
    font-size: 12px;
}

#sec_ele_hapetimer li:before{
  content: "※";
  margin-left: -28px;
}


.hapetimer_box_center{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.hapetimer_box_center p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_ele_hapetimer h1:before {
        bottom: -5px;
        width: 300px;
        height: 5px;
    }
    #sec_ele_hapetimer h1 {
        font-size: 24px;
    }
    
    .hapetimer_box_left p{
        font-size: 14px;
    }
	.hapetimer_box_center p{
        font-size: 14px;
    }
    .hapetimer_box_left{
        float: left;
        width: calc(100% - 50%);
        padding-right: 30px;
        box-sizing: border-box;   
    }

    .hapetimer_box_right{
        float: right;
        width: 50%;
        max-width: 550px;
        text-align: right;
    }
    
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_ele_hapetimer{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_ele_hapetimer .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    #sec_ele_hapetimer h1:before {
        bottom: -5px;
        width: 440px;
        height: 5px;
    }
    #sec_ele_hapetimer h1 {
        font-size: 36px;
    }
    .hapetimer_box_left p{
        font-size: 16px;
    }
	.hapetimer_box_center p{
        font-size: 16px;
    }
    .hapetimer_box_left{
        float: left;
        width: calc(100% - 58%);
        padding-right: 30px;
        box-sizing: border-box;

    }
    .hapetimer_box_right{
        float: right;
        width: 58%;
        max-width: 670px;
        text-align: right;
        margin-top: 50px;
    }
    
}



/* sec_ele_plan
------------------------------------------------------------*/

#sec_ele_plan{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_ele_plan .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_ele_plan h1 {
    width: 100%;
    margin: 0 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_ele_plan h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 100%;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.plan_box{
    overflow: hidden;
}
.plan_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.plan_box_left p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}


.plan_box_left p.attent{
    font-size: 12px;
    margin: 0 0 10px 0;
}
.plan_box_left p.attent2{
    font-size: 14px;
    margin: 0 0 10px 0;
}

.plan_box_right{
    float: right;
    width: 100%;
    text-align: right;
}

.plan_box_right img{
    width: 100%;
}

.plan_box_left .plan_eye{
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}
.plan_box_left .plan_eye2{
    margin-bottom: 0px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_ele_plan h1:before {
        bottom: -5px;
        width: 100%;
        height: 5px;
    }
    #sec_ele_plan h1 {
        font-size: 30px;
    }
    
    .plan_box_left p{
        font-size: 14px;
    }

    .plan_box_left{
        float: left;
        width: calc(100% - 35%);
        padding-right: 30px;
        box-sizing: border-box;   
    }

    .plan_box_right{
        float: right;
        width: 35%;
        max-width: 400px;
        text-align: right;
    }
    
    .plan_box_left .plan_eye{
        font-size: 24px;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_ele_plan{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_ele_plan .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_ele_plan h1 {
        font-size: 38px;
    }
    .plan_box_left p{
        font-size: 16px;
    }
    .plan_box_left{
        float: left;
        width: calc(100% - 35%);
        padding-right: 30px;
        box-sizing: border-box;

    }
    .plan_box_right{
        float: right;
        width: 35%;
        max-width: 400px;
        text-align: right;
        margin-top: 20px;
    }
    
}



/* sec_ecocute_saving
------------------------------------------------------------*/

#sec_ecocute_saving{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_ecocute_saving .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_ecocute_saving h1 {
    width: 100%;
    margin: 0 0 20px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 22px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_ecocute_saving h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 280px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.ecocute_saving_box{
    overflow: hidden;
}
.ecocute_saving_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.ecocute_saving_box_left p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}


.ecocute_saving_box_right{
    float: right;
    width: 100%;
    text-align: center;
}

.ecocute_saving_box_right img{
    width: 100%;
    max-width: 300px;
}

.ecocute_saving_box_left .ecocute_saving_eye{
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_ecocute_saving h1:before {
        bottom: -5px;
        width: 400px;
        height: 5px;
    }
    #sec_ecocute_saving h1 {
        font-size: 32px;
        margin: 0 0 30px 0;
    }
    
    .ecocute_saving_box_left p{
        font-size: 14px;
    }

    .ecocute_saving_box_left{
        float: left;
        width: calc(100% - 40%);
        padding-right: 30px;
        box-sizing: border-box;   
    }

    .ecocute_saving_box_right{
        float: right;
        width: 40%;
        max-width: 300px;
        text-align: right;
    }
    
    .ecocute_saving_box_left .ecocute_saving_eye{
        font-size: 24px;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_ecocute_saving{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_ecocute_saving .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    #sec_ecocute_saving h1:before {
        bottom: -5px;
        width: 470px;
        height: 5px;
    }
    #sec_ecocute_saving h1 {
        font-size: 38px;
    }
    .ecocute_saving_box_left p{
        font-size: 16px;
    }
    .ecocute_saving_box_left{
        float: left;
        width: calc(100% - 30%);
        padding-right: 30px;
        box-sizing: border-box;

    }
    .ecocute_saving_box_right{
        float: right;
        width: 30%;
        max-width: 300px;
        text-align: right;
        margin-top: 50px;
    }
    
}




/* sec_ecocute_how
------------------------------------------------------------*/

#sec_ecocute_how{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_ecocute_how .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_ecocute_how h1 {
    width: 100%;
    margin: 0 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_ecocute_how h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 250px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.ecocute_how_box{
    overflow: hidden;
}
.ecocute_how_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.ecocute_how_box_left p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}


.ecocute_how_box_left p.attent{
    font-size: 14px;
    margin: 0 0 10px 0;
}

.ecocute_how_box_right{
    float: right;
    width: 100%;
    text-align: center;
}

.ecocute_how_box_right img{
    width: 100%;
    max-width: 500px;
    text-align: center;
}

.ecocute_how_box_left .ecocute_how_eye{
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_ecocute_how h1:before {
        bottom: -5px;
        width: 350px;
        height: 5px;
    }
    #sec_ecocute_how h1 {
        font-size: 32px;
    }
    
    .ecocute_how_box_left p{
        font-size: 14px;
    }

    .ecocute_how_box_left{
        float: left;
        width: calc(100% - 40%);
        padding-right: 30px;
        box-sizing: border-box;   
    }

    .ecocute_how_box_right{
        float: right;
        width: 40%;
        max-width: 550px;
        text-align: right;
    }
    
    .ecocute_how_box_left .ecocute_how_eye{
        font-size: 24px;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_ecocute_how{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_ecocute_how .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    #sec_ecocute_how h1:before {
        bottom: -5px;
        width: 410px;
        height: 5px;
    }
    #sec_ecocute_how h1 {
        font-size: 38px;
    }
    .ecocute_how_box_left p{
        font-size: 16px;
    }
    .ecocute_how_box_left{
        float: left;
        width: calc(100% - 45%);
        padding-right: 30px;
        box-sizing: border-box;

    }
    .ecocute_how_box_right{
        float: right;
        width: 45%;
        max-width: 500px;
        text-align: right;
        margin-top: 70px;
    }
    
}




/* sec_ecocute_construction
------------------------------------------------------------*/

#sec_ecocute_construction{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_ecocute_construction .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_ecocute_construction h1 {
    width: 100%;
    margin: 0 0 20px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 23px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_ecocute_construction h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 330px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.ecocute_construction_box{
    overflow: hidden;
}

.ecocute_construction_box p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}

.ecocute_construction_box .ecocute_construction_eye{
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}

.ecocute_flow{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 10px 0 20px 0;
    position: relative;
    box-sizing: border-box;
}

.ecocute_flow .ecocute_flow_day{
    float: left;
    -ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
    background: #003F98;
    color: #FFF;
    box-sizing: border-box;
    padding: 20px;
    letter-spacing: 0.2em;
    font-size: 20px;
    display: none;
    height: 580px;
    box-sizing: border-box;
    position: relative;
    
}

.ecocute_flow .ecocute_flow_day:before{
	content: "";
    position: absolute;
    border: solid 38px transparent;
    border-top: solid 40px #003F98;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}


.ecocute_flow .ecocute_flow_step{
    float: left;
    width: 100%;
    margin-left: 0px;
    display: table-cell;
}

.ecocute_flow_step_p{
    overflow: hidden;
    padding-bottom: 20px;
    height: auto;
}
.ecocute_flow_step_p2{
    overflow: hidden;
    padding-bottom: 20px;
    height: auto;
}


.balloon {
    position: relative;
    display: table-cell;
    vertical-align: middle;
    background-color: #003F98;
    padding-top: 10px;
    padding-bottom: 10px;
    width: 100%;
    max-width: 100%;
    text-align: center;
    float: left;
    box-sizing: border-box;
    font-size: 14px;
    height: 100%;
    
    
}
.balloon::before {
    content: "";
    position: absolute;
    border: solid 12px transparent;
    border-top: solid 12px #003F98;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.balloon p {
    margin: 0;
    padding: 0;
    color: #FFF;
}


.step_hegith80{
    height: 80px;
}
.step_hegith100{
    height: 100px;
}

.balloon2 {
    position: relative;
    display: table-cell;
    vertical-align: middle;
    background-color: #003F98;
    padding-top: 10px;
    padding-bottom: 10px;
    width: 100%;
    max-width: 100%;
    text-align: center;
    float: left;
    box-sizing: border-box;
    font-size: 14px;
    height: 100%;
}
.balloon2 p {
    margin: 0;
    padding: 0;
    color: #FFF;
}
.step_txt{
    width: 100%;
    box-sizing: border-box;
    float: left;
    background: #DDECFF;
    display: table-cell;
    vertical-align: middle;
    padding: 15px 20px;
    font-size: 12px;
    height: 100%;
}

.step_txt p.attent{
    font-size: 12px;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_ecocute_construction h1:before {
        bottom: -5px;
        width: 490px;
        height: 5px;
    }
    #sec_ecocute_construction h1 {
        font-size: 38px;
        margin: 0 0 30px 0;
    }
    
   .ecocute_construction_box .ecocute_construction_eye{
        font-size: 24px;
    }
    
    .ecocute_flow_step_p{
        overflow: hidden;
        padding-bottom: 20px;
        height: auto;
    }
    .ecocute_flow_step_p2{
        overflow: hidden;
        padding-bottom: 20px;
        height: auto;
    }
    
    
    .ecocute_flow .ecocute_flow_day{
        display: none;
    }
    .ecocute_flow .ecocute_flow_step{
        float: left;
        width: 100%;
        margin-left: 0px;
        display: table-cell;
    }
    
    
    
    .balloon {
        position: relative;
        display: table-cell;
        vertical-align: middle;
        background-color: #003F98;
        padding-top: 5px;
        width: 100%;
        max-width: 100%;
        text-align: center;
        float: left;
        box-sizing: border-box;
        font-size: 16px;
        height: 40px;


    }
    .balloon::before {
        content: "";
        position: absolute;
        border: solid 12px transparent;
        border-top: solid 12px #003F98;
        top: 100%;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }

    .balloon2 {
        position: relative;
        display: table-cell;
        vertical-align: middle;
        background-color: #003F98;
        padding-top: 5px;
        width: 100%;
        max-width: 100%;
        text-align: center;
        float: left;
        box-sizing: border-box;
        font-size: 16px;
        height: 40px;


    }
    
    .step_txt{
        width: 100%;
        box-sizing: border-box;
        float: left;
        background: #DDECFF;
        display: table-cell;
        vertical-align: middle;
        padding: 15px 20px;
        font-size: 14px;
        height:auto;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_ecocute_construction{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_ecocute_construction .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    .ecocute_flow{
        margin: 0 auto;
        max-width: 1200px;
        overflow: hidden;
        padding: 20px 10px 20px 10px;
        position: relative;
        box-sizing: border-box;
    }
    #sec_ecocute_construction h1 {
        font-size: 38px;
    }
    .sec_ecocute_construction p{
        font-size: 16px;
    }
    
    .ecocute_flow_step_p{
        overflow: hidden;
        padding-bottom: 20px;
        height: 80px;
    }
    .ecocute_flow_step_p2{
        overflow: hidden;
        padding-bottom: 20px;
        height: 100px;
    }
    
    .ecocute_flow .ecocute_flow_day{
        display: table-cell;
    }
    .ecocute_flow .ecocute_flow_step{
        float: left;
        width: calc( 100% - 100px);
        margin-left: 20px;
        display: table-cell;
    }
    .balloon {
        position: relative;
        display: table-cell;
        vertical-align: middle;
        background-color: #003F98;
        padding-top: 20px;
        width: 30%;
        max-width: 100%;
        text-align: center;
        float: left;
        box-sizing: border-box;
        font-size: 14px;
        height: 100%;


    }
    .balloon::before {
        content: "";
        position: absolute;
        border: solid 12px transparent;
        border-top: solid 12px #003F98;
        top: 100%;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    .step_txt{
        width: calc(100% - 30%);
        box-sizing: border-box;
        float: left;
        background: #DDECFF;
        display: table-cell;
        vertical-align: middle;
        padding: 10px 20px;
        font-size: 14px;
        height: 100%;
    }
    .balloon{
        font-size: 17px;
    }
    .balloon2 {
        position: relative;
        display: table-cell;
        vertical-align: middle;
        background-color: #003F98;
        padding-top: 20px;
        width: 30%;
        max-width: 100%;
        text-align: center;
        float: left;
        box-sizing: border-box;
        font-size: 14px;
        height: 100%;

    }
    
    .balloon2{
        font-size: 17px;
    }

}


/* sec_ecocute_lineup
------------------------------------------------------------*/

#sec_ecocute_lineup{
    margin:0;
    margin-top: 30px;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_ecocute_lineup .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_ecocute_lineup h1 {
    width: 100%;
    margin: 0px 0 50px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 20px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
}

#sec_ecocute_lineup h1:before {
  content: '';
  position: absolute;
  bottom: -25px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}

#sec_ecocute_lineup h1 span{
    display: block;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.02em;
    color: #111111;
    line-height: 14px;
    padding-top: 10px;
}

#sec_ecocute_lineup h2 {
    border-bottom: solid 3px #999999;
    position: relative;
    padding-bottom: 10px;
    font-size: 15px;
    margin-top: 20px;
}

#sec_ecocute_lineup h2:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #003F98;
    bottom: -3px;
    width: 45%;
}


.ecocute_lineup_box{
    overflow: hidden;
    margin-top: 20px;
}

.ecocute_lineup_box p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}



.ecocute_lineup-list{
  display: flex;
  margin: 10px 0 30px 0;
  padding: 0;
  list-style: none;
  justify-content: space-between;
  flex-flow: row wrap;
 
}
.ecocute_lineup-list li{
    flex: 0 0 100%;
    margin-bottom: 30px;
    text-align: center;
}

.ecocute_lineup-list li a{
    text-decoration: none;
    color: #202020;
}



.ecocute_lineup-list li img{
    width: 100%;
    max-width: 360px;
}
.ecocute_lineup-list li img:hover {
	opacity: 0.8;
    
}

.ecocute_lineup-list h3{
    font-size: 14px;
    font-weight: normal;
}

.ecocute_type{
    border: 1px solid #E50065;
    padding: 5px 0;
    font-size: 22px;
    font-weight: bold;
    color: #E50065;
    text-align: center;
    margin-bottom: 10px;
    background: #FFFFFF;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_ecocute_lineup h1:before {
      bottom: -30px;
    }
    #sec_ecocute_lineup h1 {
        font-size: 38px;
    }
    
    #sec_ecocute_lineup h1 span{
        font-size: 16px;
    }
    
    #sec_ecocute_lineup h2 {
        font-size: 24px;
    }
    
    .ecocute_lineup_box p{
        font-size: 16px;
    }
    .ecocute_lineup-list h3{
        font-size: 14px;
    }
    
    .ecocute_lineup-list li{
        flex: 0 0 31%;
        margin-bottom: 10px;
        text-align: left;
    }
    .ecocute_lineup-list li img{
        width: 100%;
        max-width: 360px;
    }
    
    
}
/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_ecocute_lineup{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_ecocute_lineup .inner{
        padding: 50px 20px 60px 20px;
        box-sizing: border-box;
        
    }
    
    #sec_ecocute_lineup h1 {
        font-size: 38px;
    }
    #sec_ecocute_lineup h1 span{
        font-size: 18px;
    }
    
    
    
}


/* sec_ecocute_inspection
------------------------------------------------------------*/

#sec_ecocute_inspection{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_ecocute_inspection .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_ecocute_inspection h1 {
    width: 100%;
    margin: 0 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_ecocute_inspection h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 100%;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.ecocute_inspection_box{
    overflow: hidden;
}
.ecocute_inspection_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.ecocute_inspection_box_left p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}


.ecocute_inspection_box_left p.attent{
    font-size: 12px;
    margin: 0 0 10px 0;
}
.ecocute_inspection_box_left p.attent2{
    font-size: 14px;
    margin: 0 0 10px 0;
}

.ecocute_inspection_box_right{
    float: right;
    width: 100%;
    text-align: right;
}

.ecocute_inspection_box_right img{
    width: 100%;
}

.ecocute_inspection_box_left .plan_eye{
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}
.ecocute_inspection_box_left .plan_eye2{
    margin-bottom: 0px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_ecocute_inspection h1:before {
        bottom: -5px;
        width: 100%;
        height: 5px;
    }
    #sec_ecocute_inspection h1 {
        font-size: 30px;
    }
    
    .ecocute_inspection_box_left p{
        font-size: 14px;
    }

    .ecocute_inspection_box_left{
        float: left;
        width: calc(100% - 35%);
        padding-right: 30px;
        box-sizing: border-box;   
    }

    .ecocute_inspection_box_right{
        float: right;
        width: 35%;
        max-width: 400px;
        text-align: right;
    }
    
    .ecocute_inspection_box_left .plan_eye{
        font-size: 24px;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_ecocute_inspection{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_ecocute_inspection .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_ecocute_inspection h1 {
        font-size: 38px;
    }
    .ecocute_inspection_box_left p{
        font-size: 16px;
    }
    .ecocute_inspection_box_left{
        float: left;
        width: calc(100% - 35%);
        padding-right: 30px;
        box-sizing: border-box;

    }
    .ecocute_inspection_box_right{
        float: right;
        width: 35%;
        max-width: 400px;
        text-align: right;
        margin-top: 20px;
    }
    
}




/* sec_ih_cooking
------------------------------------------------------------*/

#sec_ih_cooking{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_ih_cooking .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_ih_cooking h1 {
    width: 100%;
    margin: 0 0 20px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 22px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_ih_cooking h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 280px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.ih_cooking_box{
    overflow: hidden;
}
.ih_cooking_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.ih_cooking_box_left p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}


.ih_cooking_box_right{
    float: right;
    width: 100%;
    text-align: center;
}

.ih_cooking_box_right p{
    text-align: center;
    font-size: 12px;
}

.ih_cooking_box_right img{
    width: 100%;
    max-width: 800px;
}

.ih_cooking_box_left .ih_cooking_eye{
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}




.ih_cooking-list{
  display: flex;
  margin: 10px 0 30px 0;
  padding: 0;
  list-style: none;
  justify-content: space-between;
  flex-flow: row wrap;
 
}
.ih_cooking-list li{
    flex: 0 0 100%;
    margin-bottom: 30px;
    text-align: center;
}
.ih_cooking-list li div{
    text-align: center;
}


.ih_cooking-list li a{
    text-decoration: none;
    color: #202020;
}



.ih_cooking-list li img{
    width: 100%;
    max-width: 280px;
}
.ih_cooking-list li img:hover {
	opacity: 0.8;
    
}

.ih_cooking-list h3{
    font-size: 14px;
    font-weight: normal;
}

#sec_ih_cooking p.attent{
    font-size: 12px;
    margin: 0 0 10px 0;
}



.ih_illust-list{
  display: flex;
  margin: 10px 0 30px 0;
  padding: 0;
  list-style: none;
  justify-content: space-between;
  flex-flow: row wrap;
 
}
.ih_illust-list li{
    flex: 0 0 100%;
    margin-bottom: 30px;
    text-align: center;
}
.ih_illust-list li div{
    text-align: center;
}




.ih_illust-list li img{
    width: 100%;
    max-width: 400px;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_ih_cooking h1:before {
        bottom: -5px;
        width: 400px;
        height: 5px;
    }
    #sec_ih_cooking h1 {
        font-size: 32px;
        margin: 0 0 30px 0;
    }
    
    .ih_cooking_box_left p{
        font-size: 14px;
    }

    .ih_cooking_box_left{
        float: left;
        width: calc(100% - 40%);
        padding-right: 30px;
        box-sizing: border-box;   
    }

    .ih_cooking_box_right{
        float: right;
        width: 40%;
        max-width: 800px;
        text-align: right;
    }
    
    .ih_cooking_box_left .ih_cooking_eye{
        font-size: 24px;
    }
    
    .ih_cooking-list h3{
        font-size: 14px;
    }
    
    .ih_cooking-list li{
        flex: 0 0 31%;
        margin-bottom: 10px;
        text-align: left;
    }
    .ih_cooking-list li img{
        width: 100%;
        max-width: 280px;
    }
    
    
    .ih_illust-list li{
        flex: 0 0 32%;
        margin-bottom: 10px;
        margin-top: 20px;
        text-align: left;
    }
    .ih_illust-list li img{
        width: 100%;
        max-width: 400px;
    }
    
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_ih_cooking{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_ih_cooking .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    #sec_ih_cooking h1:before {
        bottom: -5px;
        width: 470px;
        height: 5px;
    }
    #sec_ih_cooking h1 {
        font-size: 38px;
    }
    .eih_cooking_box_left p{
        font-size: 16px;
    }
    .ih_cooking_box_left{
        float: left;
        width: calc(100% - 50%);
        padding-right: 30px;
        box-sizing: border-box;

    }
    .ih_cooking_box_right{
        float: right;
        width: 50%;
        max-width: 800px;
        text-align: right;
        margin-top: 50px;
    }
    
}





/* sec_ih_safety
------------------------------------------------------------*/

#sec_ih_safety{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_ih_safety .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_ih_safety h1 {
    width: 100%;
    margin: 0 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_ih_safety h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 250px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.ih_safety_box{
    overflow: hidden;
}
.ih_safety_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.ih_safety_box_left p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}


.ih_safety_box_left p.attent{
    font-size: 14px;
    margin: 0 0 10px 0;
}

.ih_safety_box_right{
    float: right;
    width: 100%;
    text-align: center;
}

.ih_safety_box_right img{
    width: 100%;
    max-width: 430px;
    text-align: center;
}

.ih_safety_box_left .ih_safety_eye{
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}


#sec_ih_safety table.tbl_safety{
  width: 100%;
}



#sec_ih_safety table.tbl_safety tr{
    display: block;
    margin-bottom:10px;
}
#sec_ih_safety table.tbl_safety th{
  position: relative;
  text-align: left;
  width: 200px;
}

#sec_ih_safety table.tbl_safety th:after{
  display: block;
  content: "";
  width: 30px;
  height: 2px;
  background-color: #333;
  position: absolute;
  top:calc(50% - 1px);
  right:20px;
}

#sec_ih_safety table.tbl_safety td{
  text-align: left;
  width: calc(100% - 200px);
}

#sec_ih_safety table.tbl_safety th,
#sec_ih_safety table.tbl_safety td{
  display: block;
  width: 100% !important;
}
#sec_ih_safety table.tbl_safety th:after{
    display: none;
}

#sec_ih_safety p.attent{
    font-size: 12px;
    margin: 0 0 10px 0;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_ih_safety h1:before {
        bottom: -5px;
        width: 350px;
        height: 5px;
    }
    #sec_ih_safety h1 {
        font-size: 32px;
    }
    
    .ih_safety_box_left p{
        font-size: 14px;
    }

    .ih_safety_box_left{
        float: left;
        width: calc(100% - 50%);
        padding-right: 30px;
        box-sizing: border-box;   
    }

    .ih_safety_box_right{
        float: right;
        width: 50%;
        text-align: right;
    }
    
    .ih_safety_box_left .ih_safety_eye{
        font-size: 24px;
    }
    
    #sec_ih_safety table.tbl_safety th,
    #sec_ih_safety table.tbl_safety td{
      display:table-cell;
    }
    #sec_ih_safety table.tbl_safety th{
      position: relative;
      text-align: left;
      width: 200px !important;
    }
    
    #sec_ih_safety table.tbl_safety th:after{
          display: block;
          content: "";
          width: 30px;
          height: 2px;
          background-color: #333;
          position: absolute;
          top:calc(50% - 1px);
          right:20px;
        }
    #sec_ih_safety table.tbl_safety td{
      text-align: left;
      width: calc(100% - 200px) !important;
    }

    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_ih_safety{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_ih_safety .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    #sec_ih_safety h1:before {
        bottom: -5px;
        width: 410px;
        height: 5px;
    }
    #sec_ih_safety h1 {
        font-size: 38px;
    }
    .ih_safety_box_left p{
        font-size: 16px;
    }
    .ih_safety_box_left{
        float: left;
        width: calc(100% - 50%);
        padding-right: 30px;
        box-sizing: border-box;

    }
    .ih_safety_box_right{
        float: right;
        width: 50%;
        text-align: right;
        margin-top: 70px;
    }
    
}





/* sec_ih_flow
------------------------------------------------------------*/

#sec_ih_flow{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_ih_flow .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_ih_flow h1 {
    width: 100%;
    margin: 0 0 20px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 23px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_ih_flow h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 330px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.ih_flow_box{
    overflow: hidden;
}


.ih_flow_box .img_box{
    text-align: center;
}

.ih_flow_box .img_box img{
    width: 100%;
    max-width: 880px;
}

.ih_flow_box p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}

.ih_flow_box .ih_flow_eye{
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_ih_flow h1:before {
        bottom: -5px;
        width: 490px;
        height: 5px;
    }
    #sec_ih_flow h1 {
        font-size: 38px;
        margin: 0 0 30px 0;
    }
    
   .ih_flow_box .ih_flow_eye{
        font-size: 24px;
    }
    
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_ih_flow{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_ih_flow .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
}



/* sec_ih_video
------------------------------------------------------------*/

#sec_ih_video{
    margin:0;
    margin-top: 30px;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_ih_video .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_ih_video h1 {
    width: 100%;
    margin: 0px 0 50px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 20px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
}

#sec_ih_video h1:before {
  content: '';
  position: absolute;
  bottom: -25px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}

#sec_ih_video .inner .flowmov {
    width: 100%;
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    margin: 0;
    margin-top: 30px;
}
#sec_ih_video .inner .flowmov iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_ih_video h1:before {
      bottom: -30px;
    }
    #sec_ih_video h1 {
        font-size: 38px;
    }
    
   
    
}
/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_ih_video{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_ih_video .inner{
        padding: 50px 20px 60px 20px;
        box-sizing: border-box;
        
    }
    
    #sec_ih_video h1 {
        font-size: 38px;
    }

    
    
}





/* sec_works_list
------------------------------------------------------------*/

#sec_works_list{
    margin:0;
    margin-top: 30px;
    padding:0 0 0 0;
    text-align: left;
}

#sec_works_list .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 0px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_works_list h1 {
    width: 100%;
    margin: 0px 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 24px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
}

#sec_works_list h1:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}

#sec_works_list .works_list_box{
    text-align: center;
    max-width: 900px;
    margin: 0 auto;
}


#sec_works_list .works_list_box p{
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0.05em;
    margin-top: 10px;
}


.works-list{
  display: flex;
  margin: 35px 0 0 0;
  padding: 0;
  list-style: none;
  justify-content: space-between;
  flex-flow: row wrap;
}

.works-list::after{
    content:"";
    display: block;
    width:30%;
}


.works-list li{
    flex: 0 0 100%;
    margin-bottom: 50px;
    text-align: center;
}

.works-list li a{
    text-decoration: none;
    color: #202020;
}


.works_img{
    position: relative;
}

.works_img div.icon_new{
    position: absolute; 
    left: 0; 
    top: 0; 
    font-size: 18px;
    width: 130px;
    background: #D90000;
    text-align: center;
    color: #FFF;
    font-weight: bold;
}



.works-list li img{
    width: 100%;
    max-width: 360px;
}
.works-list li img:hover {
	opacity: 0.8;
    
}

.works-list h2{
    font-size: 14px;
}

.works-list .works_category{
    margin: 5px 0 10px 0;
}



/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_works_list h1:before {
      bottom: -10px;
    }
    #sec_works_list h1 {
        font-size: 40px;
    }
    
    .works-list h2{
        font-size: 18px;
    }
    
    .works-list li{
        flex: 0 0 31%;
        margin-bottom: 50px;
        text-align: left;
    }
    .works-list li img{
        width: 100%;
        max-width: 360px;
    }
    
    

}
/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_works_list{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_works_list .inner{
        padding: 50px 20px 60px 20px;
        box-sizing: border-box;
        
    }
    
    #sec_works_list h1 {
        font-size: 50px;
    }
 
    #sec_works_list .works_list_box p{
        font-size: 18px;
    }
    
    
}



/* sec_works_block
------------------------------------------------------------*/

#sec_works_block{
    margin:0;
    margin-top: 30px;
    padding:0 0 0 0;
    text-align: left;
}

#sec_works_block .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 0px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_works_block h1 {
    width: 100%;
    margin: 0px 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 20px;
    color: #222222;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
}

#sec_works_block h1:before {
  content: '';
  position: absolute;
  bottom: -25px;
  display: inline-block;
  width: 200px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}

#sec_works_block .works_block_box{
    text-align: center;
    max-width: 1200px;
    margin: 0 auto;
    margin-top: 20px;
    overflow: hidden;
}


#sec_works_block .works_block_box p{
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0.05em;
    margin-top: 10px;
}

.works_block_box .works_category{
    margin: 5px 0 20px 0;
    text-align: left;
}


.category_l,
a.category_l {
    font-size: 16px;
    font-weight: normal;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    width: auto;
    padding: 2px 25px 3px 25px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0em;
    color: #FFF;
    border-radius: 20px;
    background: #003F98;
    margin-right: 20px;
}


#sec_works_block .works_block_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

#sec_works_block .works_block_box_left p{
    margin-bottom: 15px;
    font-size: 14px !important;
    line-height: 2;
    text-align: left;
}

#sec_works_block .works_block_box_right{
    float: right;
    width: 100%;
    text-align: center;
    position: relative;
    margin-top: 20px;
}

#sec_works_block .works_block_box_right img{
    width: 100%;
    max-width: 400px;
    vertical-align: bottom;
}


#sec_works_block .works_block_box_right .icon_after{
    position: absolute; 
    left: 0; 
    bottom: 0; 
    font-size: 18px;
    width: 130px;
    background: #D90000;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    
}

table.works_outline{
  box-sizing: border-box;
  border-collapse:collapse;
  margin: 0 auto;
  text-align: center;
  width: 100%;
    margin-top: 20px;
}
table.works_outline th,
table.works_outline td{
  border: 1px solid #CCCCCC;
  padding: 0.6em 1em;
}
table.works_outline th{
  background: #F6F6F6;
}

table.works_outline td{
    text-align: left;
}

table.works_outline th,
table.works_outline td{
  display: block;
}


#sec_works_block .works_block_box_2col{
    float: left;
    width: 50%;
    padding-right: 0px;
    box-sizing: border-box;   
}


#sec_works_block .works_block_box2{
    text-align: center;
    max-width: 1200px;
    margin: 0 auto;
    margin-top: 20px;
    overflow: hidden;
}


#sec_works_block .works_block_box2 p{
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0.05em;
    margin-top: 5px;
    text-align: left;
}


.works-pict{
  display: flex;
  margin: 35px 0 0 0;
  padding: 0;
  list-style: none;
  justify-content: space-between;
  flex-flow: row wrap;
 
}
.works-pict li{
    flex: 0 0 100%;
    margin-bottom: 0px;
    text-align: center;
    position: relative;
    
}



.works-pict li img{
    width: 100%;
    max-width: 560px;
    vertical-align: bottom;
    padding-bottom: 20px;
    box-sizing: border-box;
}

.works-pict li.row1{
    flex: 0 0 100%;
    margin-bottom: 0px;
    text-align: center;
    position: relative;
}

.works-pict li.row1 img{
    width: 100%;
    max-width: 1160px;
    vertical-align: bottom;
}

.works-pict li.row1 img.border{
    border: 1px solid #CCC;
}

#sec_works_block .works-pict .icon_after{
    position: absolute; 
    left: 0; 
    bottom: 0; 
    font-size: 18px;
    width: 130px;
    background: #D90000;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    margin-bottom: 20px;
}
#sec_works_block .works-pict .icon_before{
    position: absolute; 
    left: 0; 
    bottom: 0; 
    font-size: 18px;
    width: 130px;
    background: #EEEEEE;
    text-align: center;
    color: #D80000;
    font-weight: bold;
    margin-bottom: 20px;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_works_block h1:before {
      bottom: -20px;
    }
    #sec_works_block h1 {
        font-size: 24px;
    }
    
    #sec_works_block .works_block_box_left{
        float: left;
        width: calc(100% - 35%);
        padding-right: 30px;
        box-sizing: border-box;   
    }
    
    #sec_works_block .works_block_box_left p{
        font-size: 16px !important;
    }
    
    
    #sec_works_block .works_block_box_right{
        float: right;
        width: 35%;
        max-width: 400px;
        text-align: right;
        margin-top: 0;
    }
    
    #sec_works_block .works_block_box_right img{
        margin-bottom: 0px;
    }
    table.works_outline th,
    table.works_outline td{
      display:table-cell;
    }
    table.works_outline th{
      width: 25%;
    }
    table.works_outline td{
      width: 75%;
    }
    
    .works-pict li{
        flex: 0 0 48%;
        margin-bottom: 0px;
        text-align: left;
    }
    .works-pict li img{
        width: 100%;
        max-width: 560px;
    }
    .works-pict li.row1{
        margin-bottom: 10px;
    }
    
    
    
    
}
/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_works_block{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_works_block .inner{
        padding: 50px 20px 60px 20px;
        box-sizing: border-box;
        
    }
    
    #sec_works_block h1 {
        font-size: 38px;
    }
 
    
    #sec_works_block .works_block_box2 p{
        font-size: 16px;
    }
}


/* sec_renovation_plan
------------------------------------------------------------*/

#sec_renovation_plan{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    /* background: url("../images/common/bg_lattice.png") left top repeat;*/
}

#sec_renovation_plan .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_renovation_plan h1 {
    width: 100%;
    margin: 0 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_renovation_plan h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 100%;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.renovation_plan_box{
    overflow: hidden;
}
.renovation_plan_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.renovation_plan_box_left p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}


.renovation_plan_box_left p.attent{
    font-size: 12px;
    margin: 0 0 10px 0;
}
.renovation_plan_box_left p.attent2{
    font-size: 14px;
    margin: 0 0 10px 0;
}

.renovation_plan_box_right{
    float: right;
    width: 100%;
    text-align: right;
}

.renovation_plan_box_right img{
    width: 100%;
}

.renovation_plan_box_left .plan_eye{
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}
.renovation_plan_box_left .plan_eye2{
    margin-bottom: 0px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}

.renovation_plan_box_full{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;
	margin-top: 20px;
}
.renovation_plan_box_full .plan_eye{
    margin-bottom: 20px;
    font-size: 28px;
    line-height: 1.2;
    color: #FF0065;
    font-weight: bold;
	
}
.renovation_plan_box_full .plan_eye img{
	vertical-align:middle;
	width: auto;
	margin-right: 20px;
}

.renovation_plan_box_full p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}

.renovation_plan_box_full img{
    width: auto;
	max-width: 100%;
}
/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_renovation_plan h1:before {
        bottom: -5px;
        width: 100%;
        height: 5px;
    }
    #sec_renovation_plan h1 {
        font-size: 30px;
    }
    
    .renovation_plan_box_left p{
        font-size: 14px;
    }
	.renovation_plan_box_full p{
        font-size: 14px;
    }
    .renovation_plan_box_left{
        float: left;
        width: calc(100% - 35%);
        padding-right: 30px;
        box-sizing: border-box;   
    }

    .renovation_plan_box_right{
        float: right;
        width: 35%;
        max-width: 400px;
        text-align: right;
    }
    
    .renovation_plan_box_left .plan_eye{
        font-size: 24px;
    }
    
    .renovation_plan_box_full .plan_eye{
        font-size: 36px;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_renovation_plan{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_renovation_plan .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_renovation_plan h1 {
        font-size: 38px;
    }
    .renovation_plan_box_left p{
        font-size: 16px;
    }
	.renovation_plan_box_full p{
        font-size: 16px;
    }
    .renovation_plan_box_left{
        float: left;
        width: calc(100% - 35%);
        padding-right: 30px;
        box-sizing: border-box;

    }
    .renovation_plan_box_right{
        float: right;
        width: 35%;
        max-width: 400px;
        text-align: right;
        margin-top: 20px;
    }
    
}




/* sec_renovation_comfortable
------------------------------------------------------------*/

#sec_renovation_comfortable{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_renovation_comfortable .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_renovation_comfortable h1 {
    width: 100%;
    margin: 0 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_renovation_comfortable h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 100%;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.renovation_comfortable_box{
    overflow: hidden;
}
.renovation_comfortable_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.renovation_comfortable_box_left p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}


.renovation_comfortable_box_left p.attent{
    font-size: 12px;
    margin: 0 0 10px 0;
}
.renovation_comfortable_box_left p.attent2{
    font-size: 14px;
    margin: 0 0 10px 0;
}

.renovation_comfortable_box_right{
    float: right;
    width: 100%;
    text-align: right;
}

.renovation_comfortable_box_right img{
    width: 100%;
}

.renovation_comfortable_box_left .plan_eye{
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}
.renovation_comfortable_box_left .plan_eye2{
    margin-bottom: 0px;
    font-size: 20px;
    line-height: 1.7;
    color: #003F98;
    font-weight: bold;
}


#sec_renovation_comfortable .important_box{
    text-align: center;
    margin: 0 auto;
    background: #F4F8FF;
    padding: 30px 10px;
    box-sizing: border-box;
    border-radius: 14px;
}


#sec_renovation_comfortable .important_box p{
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0.05em;
    margin-top: 10px;
}

ul.renovation_important{
    margin: 0 auto;
    overflow: hidden;
    list-style: none;
    padding-left: 20px;
    margin-top: 20px;
}

ul.renovation_important li {
    text-align: left;
    float: left;
    padding: 0 0 30px 0;
    width: 100%;
    box-sizing: border-box;
    font-size: 16px;
    font-weight: bold;
    list-style-type:disc !important;
}

ul.renovation_important li p{
    font-size: 14px;
    font-weight: normal;
    margin: 0 !important;
    padding: 0 !important;
}


ul.renovation_important_sub{
    margin: 0 auto;
    overflow: hidden;
    list-style: none;
    padding: 20px 10px 20px 40px;
    margin-top: 10px;
    background: #f8f4e6;
    border-radius: 14px;
}

ul.renovation_important_sub li {
    text-align: left;
    float: left;
    padding: 0 0 10px 0;
    width: 100%;
    box-sizing: border-box;
    font-size: 16px;
    font-weight: bold;
    list-style-type:decimal !important;
    color: #222;
}

ul.renovation_important_sub li p{
    font-size: 14px;
    font-weight: normal;
    margin: 0 !important;
    padding: 0 !important;
    color: #333;
}




#sec_renovation_comfortable h2 {
    width: 100%;
    margin: 0px 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 18px;
    color: #333;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    line-height: 1.5;
}

#sec_renovation_comfortable h2:before {
  content: '';
  position: absolute;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  bottom: -15px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #333;

}



/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_renovation_comfortable h1:before {
        bottom: -5px;
        width: 100%;
        height: 5px;
    }
    #sec_renovation_comfortable h1 {
        font-size: 30px;
    }
    
    .renovation_comfortable_box_left p{
        font-size: 14px;
    }

    .renovation_comfortable_box_left{
        float: left;
        width: calc(100% - 35%);
        padding-right: 30px;
        box-sizing: border-box;   
    }

    .renovation_comfortable_box_right{
        float: right;
        width: 35%;
        max-width: 400px;
        text-align: right;
    }
    
    .renovation_comfortable_box_left .plan_eye{
        font-size: 24px;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_renovation_comfortable{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_renovation_comfortable .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_renovation_comfortable h1 {
        font-size: 38px;
    }
    .renovation_comfortable_box_left p{
        font-size: 16px;
    }
    .renovation_comfortable_box_left{
        float: left;
        width: calc(100% - 35%);
        padding-right: 30px;
        box-sizing: border-box;

    }
    .renovation_comfortable_box_right{
        float: right;
        width: 35%;
        max-width: 400px;
        text-align: right;
        margin-top: 20px;
    }
    #sec_renovation_comfortable .important_box{
        padding: 40px;
        margin-top: 20px;
    }
    ul.renovation_important{
        padding-left: 50px;
    }

    ul.renovation_important li {
        font-size: 24px;
    }

    ul.renovation_important li p{
        font-size: 14px;
    }
    
    ul.renovation_important_sub{
        padding-left: 50px;
    }

    ul.renovation_important_sub li {
        font-size: 20px;
    }

    ul.renovation_important_sub li p{
        font-size: 14px;
    }
    
    #sec_renovation_comfortable h2 {
        font-size: 24px;
    }
}



/* sec_contact_email
------------------------------------------------------------*/

#sec_contact_email{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_contact_email .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 0 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_contact_email h1 {
    width: 100%;
    margin: 0 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_contact_email h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 300px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.contact_email_box{
    overflow: hidden;
}

.contact_email_box p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}

table.entry_form{
	width: 100%;
	margin: 0 auto 0px;
    font-size: 16px;
	}
	
table.entry_form th{
	width: 100%;
	padding: 15px 10px;
	text-align: left;
	border-bottom: dotted 1px #C9C9C9;
    letter-spacing: 0.05em;
    background: #EEE;
    box-sizing: border-box;
	}
table.entry_form th em{
    font-style: normal;
    background: #FF4000;
    color:#FFFFFF;
    font-weight: normal;
    padding: 0px 5px 2px 5px;
    border-radius: 4px;
    font-size: 13px;
    margin-left: 20px;
}
table.entry_form th span{
	margin-right: 55px;
	}
	
table.entry_form td{
    width: 100%;
	padding: 20px 10px;
    overflow: hidden;
	border-bottom: dotted 1px #C9C9C9;
	}

table.entry_form td,
table.entry_form th {
    border-bottom: none;
    display: block;
}

img.icon_required{
	margin: 0 20px;
	}
	
.privacy{
	width: calc(100% - 20px);
	margin: 0 auto;
	border: solid 1px #BFBFBF;
	padding: 10px 20px;
	line-height: 1.7;
	height: 224px;
	overflow:auto;
    box-sizing: border-box;
    margin: 0 10px;
    font-size: 13px;
        text-align: left !important;
        line-height: 1.5 !important;
	}
	
.privacy span{
	font-weight: bold;
	font-size: 16px;
	line-height: 3em;
	}
	
.consent{
	width: calc(100% - 30px);
	margin: 20px 10px 40px;
	background-color:#E5E5E5;
	font-size: 10pt;
	height: auto;
	text-align: center;
	padding: 10px 5px;
    
    
	}
	
.button{
	width: 300px;
	background-color: #ED7054;
	font-weight: bold;
	font-size: 14pt;
	color: #fff;
	text-align: center;
	padding: 15px 0;
	border-radius: 5px;
	margin: 0 auto;
	}


input[type='radio']{

    }

label{
	display: inline-block;
margin-left: 0.5em;
}	

input[type="text"] {
	float: left;
	}

textarea{
	margin: 10px 0;
	width: 90%;
	height: 100px;
	}
	

.add-wrap {
	max-width: 100%;
	margin: 0px auto;
}
.add-wrap dt {
	width: 90%;
	float: none;
	padding-top: 5px;
    box-sizing: border-box;
}
.add-wrap dd {
    padding: 10px 0;
    margin-bottom: 0px;
    overflow: hidden;
}
.add-wrap dd:last-child {
 margin-bottom: 0px;
}
input[type="text"],
input[type="tel"],
textarea {
    padding: 0.6em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;6
    font-size: 16px;
    width: 90%;
    box-sizing: border-box;
    margin-top: 0px;
}
input[type="email"]{
    padding: 0.5em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
    width: 200px;
    box-sizing: border-box;
    margin-top: 0px;
}
input[type="date"]{
    padding: 0.5em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
    width: 200px;
    box-sizing: border-box;
    margin-top: 0px;
}
input[type="number"]{
    padding: 0.5em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
    width: 200px;
    box-sizing: border-box;
    margin-top: 0px;
}

select{
    padding: 0.5em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
    width: 200px;
    box-sizing: border-box;
    margin-top: 0px;
}

textarea{
    height: 200px;
}

input[type="text"]:focus,
textarea:focus {
	box-shadow: 0 0 7px #3498db;
	border: 1px solid #3498db;
}


input[type="text"]:focus,
textarea:focus {
	box-shadow: 0 0 7px #3498db;
	border: 1px solid #3498db;
}

.radio02-input{
  display: none;
}
.radio02-input + label{
  padding-left: 25px;
  position:relative;
  margin-right: 20px;
    
}
.radio02-input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 7px;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #999;
  border-radius: 50%;
}
.radio02-input:checked + label{
  color: #009a9a;
}
.radio02-input:checked + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  left: 3px;
  width: 11px;
  height: 11px;
  background: #009a9a;
  border-radius: 50%;
}

input[type=text].form-w40p {
	width: 40%;
    margin-right: 20px;
}
input[type=text].form-w80px {
	width: 80px;
}
input[type=tel] {
	width: 65px;
}
input[type=email] {
	width: 90%;
}
input[type=number] {
	width: 100px;
}


/* checkbox------------------- */
/* Base for label styling */
[type="checkbox"]:not(:checked),
[type="checkbox"]:checked {
  position: absolute;
  left: -9999px;
}
[type="checkbox"]:not(:checked) + label,
[type="checkbox"]:checked + label {
  position: relative;
  padding-left: 1.95em;
  cursor: pointer;
  padding-top: 8px;
    font-weight: bold;
    font-size: 17px;
    line-height: 17px;
}
/* checkbox aspect */
[type="checkbox"]:not(:checked) + label:before,
[type="checkbox"]:checked + label:before {
  content: '';
  position: absolute;
  left: 0; top: 5px;
  width: 1.25em; height: 1.25em;
  border: 1px solid #c0cac3;
  background: #fff;
  border-radius: 3px;
  box-shadow: inset 0 1px 3px rgba(0,0,0,.1);
}
/* checked mark aspect */
[type="checkbox"]:not(:checked) + label:after,
[type="checkbox"]:checked + label:after {
  content: '\2713\0020';
  position: absolute;
  top: .35em;
  left: .22em;
  font-size: 1.3em;
  line-height: 0.8;
  color: #009a9a;
  transition: all .2s;
  font-family: 'Lucida Sans Unicode', 'Arial Unicode MS', Arial;
}
/* checked mark aspect changes */
[type="checkbox"]:not(:checked) + label:after {
  opacity: 0;
  transform: scale(0);
}
[type="checkbox"]:checked + label:after {
  opacity: 1;
  transform: scale(1);
}
[type="checkbox"]:checked + label{
  color: #009a9a;
}


/* css checkbox01 */
.checkbox01-input{
  display: none;
}


.checkbox01-parts{
    width: 25%;
  position:relative;
    font-size: 16px !important;
    font-weight: normal !important;
    padding: 10px 50px 0 30px  !important;
    margin-bottom: 15px !important;
}
.checkbox01-parts::before{
  content: "";
  display: block;
  position: absolute;
  top: 6px;
  left: 0;
  width: 20px;
  height: 20px;
  border: 2px solid #999 !important;
  border-radius: 0px !important;
 margin-top: 5px;
}
.checkbox01-input:checked + .checkbox01-parts{
  color: #009a9a;
}
.checkbox01-input:checked + .checkbox01-parts::after{
  content: "";
  display: block;
  position: absolute;
  top: 11px;
  left: 7px;
  width: 7px;
  height: 14px;
  transform: rotate(40deg);
  border-bottom: 3px solid #009a9a;
  border-right: 3px solid #009a9a;
}


.checkbox01-consent{
    width: 25%;
  position:relative;
    font-size: 16px !important;
    font-weight: normal !important;
    padding: 10px 0 0 30px  !important;
    margin-bottom: 15px !important;
}
.checkbox01-consent::before{
  content: "";
  display: block;
  position: absolute;
  top: 6px;
  left: 0;
  width: 20px;
  height: 20px;
  border: 2px solid #999 !important;
  border-radius: 0px !important;
 margin-top: 5px;
}
.checkbox01-input:checked + .checkbox01-consent{
  color: #009a9a;
}
.checkbox01-input:checked + .checkbox01-consent::after{
  content: "";
  display: block;
  position: absolute;
  top: 11px;
  left: 7px;
  width: 7px;
  height: 14px;
  transform: rotate(40deg);
  border-bottom: 3px solid #009a9a;
  border-right: 3px solid #009a9a;
}

/* entry-button ----- */
.form-button-wrap {
	text-align: center;
	margin-bottom: 40px;
    margin-top: 40px;
}
.form-button {
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	line-height: 1;
	text-align: center;
	display: inline-block;
	padding: 30px 0;
	transition: all 0.2s ease-in-out;
	background-color: #222222;
	position: relative;
	width: 80%;
	cursor: pointer;
    border: 2px solid #222222;
    font-weight: bold;
    margin: 2% 0;
}

.form-button:hover {
	background-color: #FFF;
	color: #666666;
}


.form-button2 {
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	line-height: 1;
	text-align: center;
	display: inline-block;
	padding: 30px 0;
	transition: all 0.2s ease-in-out;
	background-color: #666;
	position: relative;
	width: 80%;
	cursor: pointer;
    border: 2px solid #666;
    font-weight: bold;
    margin: 2% 0;
}

.form-button2:hover {
	background-color: #FFF;
	color: #333;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_contact_email h1:before {
        bottom: -5px;
        width: 450px;
        height: 5px;
    }
    #sec_contact_email h1 {
        font-size: 38px;
    }
    
 
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_contact_email{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_contact_email .inner{
        padding: 50px 10px 20px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_contact_email h1 {
        font-size: 38px;
    }
    .contact_email_box p{
        font-size: 16px;
    }
    
    table.entry_form{
            width: 100%;
            max-width: 1160px;
            margin: 0 auto 60px;
            font-size: 16px;
        }

        table.entry_form th{
            width: 270px;
            padding: 20px;
            text-align: right;
            border-bottom: dotted 1px #C9C9C9 !important;
            letter-spacing: 0.05em;
            background: none;
        }
        table.entry_form th em{
            font-style: normal;
            background: #FF4000;
            color:#FFFFFF;
            font-weight: normal;
            padding: 0px 5px 2px 5px;
            border-radius: 4px;
            font-size: 13px;
            margin-left: 20px;
        }
        table.entry_form th span{
            margin-right: 55px;
            }

        table.entry_form td{
            width: calc(100% - 270px);
            padding: 20px;
            border-bottom: dotted 1px #C9C9C9 !important;
            }

        table.entry_form td,
        table.entry_form th {
            border-bottom: none;
            display:table-cell;
        }
        .add-wrap {
            max-width: 100%;
            margin: 0px auto;
        }
        .add-wrap dt {
            width: 120px;
            float: left;
            padding-top: 5px;
        }
        .add-wrap dd {
            padding: 0 0 0 10px;
            margin-bottom: 15px;
            overflow: hidden;
        }
        .add-wrap dd:last-child {
         margin-bottom: 0px;
        }
    
        .form-button {
            width: 40%;
            margin: 0 2%;
        }
        .form-button2 {
            width: 40%;
            margin: 0 2%;
        }
    
}

/* sec_contact_tel
------------------------------------------------------------*/

#sec_contact_tel{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_contact_tel .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 0 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_contact_tel h1 {
    width: 100%;
    margin: 0 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_contact_tel h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 300px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.contact_tel_box{
    overflow: hidden;
}

.contact_tel_box p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}


.contact_tel_box .tel_box{
    padding: 0 0 0 0;
    margin: 20px auto;
    border: 1px solid #EC710C;
    width: 96%;
    max-width: 600px;
}

.contact_tel_box .fa-phone{
    font-size: 30px;
    margin-right: 10px;
    vertical-align: middle;
    margin-bottom: 3px;
    color: #EC710C;
    transform: rotateY(180deg);
}



.contact_tel_box .tel_box p.telnum{
    width: 100%;
    padding: 15px 0;
    font-size: 28px;
    font-weight: bold;
    line-height: 1em;
    text-align: center;
    margin-bottom: 0;
}

.contact_tel_box .tel_box p.telnum img{
    vertical-align: top;
    margin-right: 10px;
    margin-top: 3px;
    width: 25px;
}

.contact_tel_box .tel_box p.reception{
    width: 100%;
    background: #EC710C;
    padding: 10px 0;
    font-size: 13px;
    text-align: center;
    color:#FFF;
    margin-bottom: 0;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_contact_tel h1:before {
        bottom: -5px;
        width: 450px;
        height: 5px;
    }
    #sec_contact_tel h1 {
        font-size: 38px;
    }
    
    .sec_contact_box01 .tel_box{
        margin: 40px auto;
        width: 70%;
        max-width: 600px;
        
    }
    
    .contact_tel_box .fa-phone{
        font-size: 40px;
        margin-right: 20px;
        vertical-align: middle;
        margin-bottom: 5px;
        color: #008b8b;
        transform: rotateY(180deg);
    }

    
    .contact_tel_box .tel_box p.telnum{
        font-size: 40px;
        text-align: center;
    }
    
    
    .contact_tel_box .tel_box p.telnum img{
        vertical-align: top;
        margin-right: 10px;
        margin-top: 6px;
        width: auto;
    }

    .contact_tel_box .tel_box p.reception{
        font-size: 18px;
        text-align: center;
    }
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_contact_tel{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_contact_tel .inner{
        padding: 50px 10px 0px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_contact_tel h1 {
        font-size: 38px;
    }
    .contact_tel_box p{
        font-size: 16px;
    }
    .contact_tel_box .tel_box{
        margin: 40px auto;
        width: 70%;
        max-width: 600px;
    }
    
    .contact_tel_box .fa-phone{
        font-size: 46px;
        margin-right: 20px;
        vertical-align: middle;
        margin-bottom: 8px;
        color: #EC710C;
        transform: rotateY(180deg);
    }
    
    .contact_tel_box .tel_box p.telnum{
        font-size: 50px;
        text-align: center;
    }
    
    
    .contact_tel_box .tel_box p.telnum img{
        vertical-align: top;
        margin-right: 10px;
        margin-top: 6px;
        width: auto;
    }

    .contact_tel_box .tel_box p.reception{
        font-size: 21px;
        text-align: center;
    }
}




/* sec_sitemap
------------------------------------------------------------*/

#sec_sitemap{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_sitemap .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 0 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_sitemap h1 {
    width: 100%;
    margin: 0 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_sitemap h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 300px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.sitemap_box{
    overflow: hidden;
}

.sitemap_box p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}



/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_sitemap h1:before {
        bottom: -5px;
        width: 450px;
        height: 5px;
    }
    #sec_sitemap h1 {
        font-size: 38px;
    }
    
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_sitemap{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_sitemap .inner{
        padding: 50px 10px 50px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_sitemap h1 {
        font-size: 38px;
    }
    .sitemap_box p{
        font-size: 16px;
    }
    
}




/* ------------------------------------------------------------------------------------ */
/* PRIVACY POLICY(sp)										*/
/* ------------------------------------------------------------------------------------ */

h1.h1-privacy {
    margin: 10px 0 10px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 20px;
    color: #111111;
    box-sizing: border-box;
    line-height: 0.9em;
    font-weight: bold;
    position: relative;
    display: inline-block;
    padding: 0 55px;
    letter-spacing: 0.02em;
}

h1.h1-privacy:before{
    content: '';
    position: absolute;
    top: 15%;
    display: inline-block;
    width: 10px;
    height: 1px;
    background-color: #111111;
}

h1.h1-privacy:after{
    content: '';
    position: absolute;
    top: 15%;
    display: inline-block;
    width: 10px;
    height: 1px;
    background-color: #111111;
}

h1.h1-privacy:before {left:15%;}

h1.h1-privacy:after {left:80%;}

h1.h1-privacy span{
    display: block;
    font-size: 14px;
    letter-spacing: 0.1em;
    color: #111;
    font-weight: normal;
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", HelveticaNeue, "Segoe UI", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-align: center;
    margin-top: 20px;
}


.h2_privacy {
	text-align: left;
	font-size: 14pt;
	padding-left: 10px;
	padding-bottom: 3px;
	margin-bottom: 15px;
	border-bottom: solid 1px #003F98;
        color: #003F98;
	}
	
	
.sec_privacy {
	padding : 10px 0;
	}
	
.sec_privacy .inner {
    margin: 0 auto;
        max-width: 1200px;
        overflow: hidden;
        padding: 10px 10px 10px 10px;
        position: relative;
        box-sizing: border-box;
}


.sec_privacy .inner p{
    text-align: left;
    margin-left: 0px;
    line-height: 1.8;
}

ul.list_privacy{
	text-align: left;
	list-style: disc;
	padding-left: 40px;
	}
	
.sec_privacy_company_info{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 0px 0 20px 10px;
    text-align: left;
}

.sec_privacy_company_info .inner span{
	font-weight: bold;
	font-size: 14pt;
	}



/* ------------------------------------------------------------------------------------ */
/* TERMS(sp)										*/
/* ------------------------------------------------------------------------------------ */

h1.h1-terms {
    margin: 10px 0 10px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 16px;
    color: #111111;
    box-sizing: border-box;
    line-height: 0.9em;
    font-weight: bold;
    position: relative;
    display: inline-block;
    padding: 0 55px;
    letter-spacing: 0.02em;
}

h1.h1-terms:before{
    content: '';
    position: absolute;
    top: 15%;
    display: inline-block;
    width: 10px;
    height: 1px;
    background-color: #111111;
}

h1.h1-terms:after{
    content: '';
    position: absolute;
    top: 15%;
    display: inline-block;
    width: 10px;
    height: 1px;
    background-color: #111111;
}

h1.h1-terms:before {left:15%;}

h1.h1-terms:after {left:80%;}

h1.h1-terms span{
    display: block;
    font-size: 14px;
    letter-spacing: 0.1em;
    color: #111;
    font-weight: normal;
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", HelveticaNeue, "Segoe UI", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-align: center;
    margin-top: 20px;
}



span.title_terms{
	text-align: center;
	}



.h2_terms {
	text-align: left;
	font-size: 14pt;
	padding-left: 10px;
	padding-bottom: 3px;
	margin-bottom: 15px;
	border-bottom: solid 1px #003F98;
        color: #003F98;
	}
	
.sec_terms {
	padding : 10px 0;
	}
	


.sec_terms .inner {
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 10px 10px 10px 10px;
    position: relative;
    box-sizing: border-box;
}

.sec_terms .inner p{
    text-align: left;
    margin-left: 0px;
    line-height: 1.8;
}

.link_form{
	color: #d68284;
	margin-bottom: 100px;
	}




/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {

    /* ------------------------------------------------------------------------------------ */
    /* PRIVACY POLICY(tb)										*/
    /* ------------------------------------------------------------------------------------ */

    h1.h1-privacy {
        margin: 10px 0 10px 0;
        position: relative;
        display: inline-block;
        text-align: left;
        font-size: 30px;
        color: #111111;
        box-sizing: border-box;
        line-height: 0.9em;
        font-weight: bold;
        position: relative;
        display: inline-block;
        padding: 0 55px;
        letter-spacing: 0.02em;
    }

    h1.h1-privacy:before{
        content: '';
        position: absolute;
        top: 20%;
        display: inline-block;
        width: 20px;
        height: 1px;
        background-color: #111111;
    }

    h1.h1-privacy:after{
        content: '';
        position: absolute;
        top: 20%;
        display: inline-block;
        width: 20px;
        height: 1px;
        background-color: #111111;
    }

    h1.h1-privacy:before {left:8%;}

    h1.h1-privacy:after {left:85%;}

    h1.h1-privacy span{
        display: block;
        font-size: 14px;
        letter-spacing: 0.1em;
        color: #111;
        font-weight: normal;
        font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", HelveticaNeue, "Segoe UI", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
        text-align: center;
        margin-top: 20px;
    }


    .h2_privacy {
        text-align: left;
        font-size: 14pt;
        padding-left: 20px;
        padding-bottom: 3px;
        margin-bottom: 15px;
        border-bottom: solid 1px #003F98;
        color: #003F98;
        }

    .sec_privacy {
        padding : 10px 0;
        }

    .sec_privacy .inner {
        margin: 0 auto;
        max-width: 1200px;
        overflow: hidden;
        padding: 10px 10px 10px 10px;
        position: relative;
        box-sizing: border-box;
    }
    
    .sec_privacy .inner p{
        text-align: left;
        margin-left: 10px;
        line-height: 1.8;
    }

    ul.list_privacy{
        text-align: left;
        list-style: disc;
        padding-left: 40px;
        }

    .sec_privacy_company_info{
        margin: 0 auto;
        max-width: 1200px;
        overflow: hidden;
        padding: 0px 0 20px 20px;
        text-align: left;
    }

    .sec_privacy_company_info .inner span{
        font-weight: bold;
        font-size: 14pt;
        }

    

    /* ------------------------------------------------------------------------------------ */
    /* TERMS(tb)										*/
    /* ------------------------------------------------------------------------------------ */

    h1.h1-terms {
        margin: 10px 0 10px 0;
        position: relative;
        display: inline-block;
        text-align: left;
        font-size: 30px;
        color: #111111;
        box-sizing: border-box;
        line-height: 0.9em;
        font-weight: bold;
        position: relative;
        display: inline-block;
        padding: 0 55px;
        letter-spacing: 0.02em;
    }

    h1.h1-terms:before{
        content: '';
        position: absolute;
        top: 20%;
        display: inline-block;
        width: 20px;
        height: 1px;
        background-color: #111111;
    }

    h1.h1-terms:after{
        content: '';
        position: absolute;
        top: 20%;
        display: inline-block;
        width: 20px;
        height: 1px;
        background-color: #111111;
    }

    h1.h1-terms:before {left:8%;}

    h1.h1-terms:after {left:88%;}

    h1.h1-terms span{
        display: block;
        font-size: 14px;
        letter-spacing: 0.1em;
        color: #111;
        font-weight: normal;
        font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", HelveticaNeue, "Segoe UI", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
        text-align: center;
        margin-top: 20px;
    }



    span.title_terms{
        text-align: center;
        }


    .sec_terms .inner p{
        text-align: left;
        margin-left: 10px;
        line-height: 1.8;
    }


    .h2_terms {
        text-align: left;
        font-size: 14pt;
        padding-left: 20px;
        padding-bottom: 3px;
        margin-bottom: 15px;
        border-bottom: solid 1px #003F98;
        color: #003F98;
        }

    .sec_terms {
        padding : 10px 0;
        }

    .sec_terms .inner {
        margin: 0 auto;
        max-width: 1200px;
        overflow: hidden;
        padding: 10px 10px 10px 10px;
        position: relative;
        box-sizing: border-box;
    }

    .link_form{
        color: #d68284;
        margin-bottom: 100px;
        }


    .sec_terms ul{
        text-align: left;
        font-size: 14px;
        list-style: none;
        padding-left: 30px;
        margin-top: 3px;
    }

    .sec_terms ul li{
        font-size: 10pt;
    }
    .sec_terms ul li:before{ /*逍台ｼｼ隕∫ｴ�*/
        display:inline-block;
        vertical-align: middle;
        content:'';
        width:4px;
        height:4px;
        background: #313131;
        border-radius: 2px;
        margin-right: 10px;
        margin-top: 1px;

    }

    
    
}
    
/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
  
    /* ------------------------------------------------------------------------------------ */
    /* PRIVACY POLICY(pc)										*/
    /* ------------------------------------------------------------------------------------ */

    h1.h1-privacy {
        margin: 10px 0 10px 0;
        position: relative;
        display: inline-block;
        text-align: left;
        font-size: 50px;
        color: #111111;
        box-sizing: border-box;
        line-height: 0.9em;
        font-weight: bold;
        position: relative;
        display: inline-block;
        padding: 0 55px;
        letter-spacing: 0.02em;
    }

    h1.h1-privacy:before{
        content: '';
        position: absolute;
        top: 22%;
        display: inline-block;
        width: 45px;
        height: 1px;
        background-color: #111111;
    }

    h1.h1-privacy:after{
        content: '';
        position: absolute;
        top: 22%;
        display: inline-block;
        width: 45px;
        height: 1px;
        background-color: #111111;
    }

    h1.h1-privacy:before {left:0;}

    h1.h1-privacy:after {left:91%;}

    h1.h1-privacy span{
        display: block;
        font-size: 14px;
        letter-spacing: 0.1em;
        color: #111;
        font-weight: normal;
        font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", HelveticaNeue, "Segoe UI", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
        text-align: center;
    }

    .h2_privacy {
        text-align: left;
        font-size: 16pt;
        padding-left: 10px;
        padding-bottom: 3px;
        margin-bottom: 15px;
        border-bottom: solid 1px #003F98;
        color: #003F98;
        }
    .sec_privacy {
        padding : 10px 0;
        }

    .sec_privacy .inner {
        margin: 0 auto;
        max-width: 1200px;
        overflow: hidden;
        padding: 10px 10px 10px 10px;
        position: relative;
        box-sizing: border-box;
    }

    ul.list_privacy{
        text-align: left;
        list-style: disc;
        padding-left: 40px;
        }

    .sec_privacy_company_info{
        margin: 0 auto;
        max-width: 1200px;
        overflow: hidden;
        padding: 0px 0 20px 40px;
    }

    .sec_privacy_company_info .inner span{
        font-weight: bold;
        font-size: 14pt;
        }
    


    /* ------------------------------------------------------------------------------------ */
    /* TERMS(pc)										*/
    /* ------------------------------------------------------------------------------------ */

    h1.h1-terms {
        margin: 10px 0 10px 0;
        position: relative;
        display: inline-block;
        text-align: left;
        font-size: 50px;
        color: #111111;
        box-sizing: border-box;
        line-height: 0.9em;
        font-weight: bold;
        position: relative;
        display: inline-block;
        padding: 0 55px;
        letter-spacing: 0.02em;
    }

    h1.h1-terms:before{
        content: '';
        position: absolute;
        top: 22%;
        display: inline-block;
        width: 45px;
        height: 1px;
        background-color: #111111;
    }

    h1.h1-terms:after{
        content: '';
        position: absolute;
        top: 22%;
        display: inline-block;
        width: 45px;
        height: 1px;
        background-color: #111111;
    }

    h1.h1-terms:before {left:0;}

    h1.h1-terms:after {left:91%;}

    h1.h1-terms span{
        display: block;
        font-size: 14px;
        letter-spacing: 0.1em;
        color: #111;
        font-weight: normal;
        font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", HelveticaNeue, "Segoe UI", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
        text-align: center;
    }



    span.title_terms{
        text-align: center;
        }


    #sec_terms .inner .terms_msg{
        width: 100%;
        float:left;
        box-sizing: border-box;
        background-repeat: no-repeat;
        background-position: top right;
    }

    .h2_terms {
        text-align: left;
        font-size: 16pt;
        padding-left: 10px;
        padding-bottom: 3px;
        margin-bottom: 15px;
        border-bottom: solid 1px #003F98;
        color: #003F98;
        }

    .sec_terms {
        padding : 10px 0;
        }

    .sec_terms .inner {
        margin: 0 auto;
        max-width: 1200px;
        overflow: hidden;
        padding: 10px 10px 10px 10px;
        position: relative;
        box-sizing: border-box;
    }

    .link_form{
        color: #d68284;
        margin-bottom: 100px;
        }

    
    
}








/* sec_simulation_main
------------------------------------------------------------*/

#sec_simulation_main{
    margin:0;
    margin-top: 30px;
    padding:0 0 0 0;
    text-align: left;
}

#sec_simulation_main .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 0px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_simulation_main h1 {
    width: 100%;
    margin: 0px 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 18px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
}

#sec_simulation_main h1:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}



#sec_simulation_main .simulation_main_box{
    text-align: center;
    max-width: 900px;
    margin: 0 auto;
}


#sec_simulation_main .simulation_main_box p{
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0.05em;
    margin-top: 10px;
}

#sec_simulation_main .simulation_ele_box{
    text-align: center;
    max-width: 1160px;
    margin: 0 auto;
    background: #F4F8FF;
    padding: 20px 20px;
    box-sizing: border-box;
    margin-top: 30px;
}


#sec_simulation_main .simulation_ele_box h2 {
    width: 100%;
    margin: 0 0 10px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 22px;
    color: #1F1F1F;
    box-sizing: border-box;
    line-height: 1.7em;
    font-weight: bold;
    letter-spacing: 0.1em;
}


#sec_simulation_main .simulation_ele_box p{
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0.05em;
    margin-top: 10px;
}


#sec_simulation_main .inner .btn_more{
    width: 100%;
    margin: 20px auto 10px auto;
}


#sec_simulation_main .simulation_flow_box{
    text-align: center;
    max-width: 1160px;
    margin: 0 auto;
    background: #F4F8FF;
    padding: 0 0;
    box-sizing: border-box;
    margin-top: 30px;
}


#sec_simulation_main .simulation_flow_box h2 {
    width: 100%;
    margin: 0 0 0 0;
    padding: 10px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 20px;
    color: #FFF;
    box-sizing: border-box;
    line-height: 1.7em;
    font-weight: bold;
    letter-spacing: 0.1em;
    background: #003F98;
}


#sec_simulation_main .simulation_flow_box .simulation_step li{
    float: left;
    list-style: none;
    margin: 0px;
    padding: 20px;
    box-sizing: border-box;
    width: calc(100% / 1);
    background: #F4F8FF;
    height: 210px;
}

#sec_simulation_main .simulation_flow_box .simulation_step li.fstep1{
    background: #F4F8FF;
}
#sec_simulation_main .simulation_flow_box .simulation_step li.fstep2{
    background: #EEF4FF;
}
#sec_simulation_main .simulation_flow_box .simulation_step li.fstep3{
    background: #E6EEFF;
}
#sec_simulation_main .simulation_flow_box .simulation_step li.fstep4{
    background: #E1EBFF;
}

#sec_simulation_main .simulation_flow_box .simulation_step li span{
    font-size: 24px;
    color: #003F98;
    font-weight: bold;
    font-family: "Lato";
}

#sec_simulation_main .simulation_flow_box .simulation_step li p{
    font-weight: bold;
    font-size: 18px;
    line-height: 1.5;
}


#sec_simulation_main .simulation_flow_box .simulation_step li.fstep1 p{
    margin-top: 20px;
}
#sec_simulation_main .simulation_flow_box .simulation_step li.fstep2 p{
    margin-top: 30px;
}
#sec_simulation_main .simulation_flow_box .simulation_step li.fstep3 p{
    margin-top: 30px;
}
#sec_simulation_main .simulation_flow_box .simulation_step li.fstep4 p{
    margin-top: 10px;
}

/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_simulation_main h1:before {
      bottom: -10px;
    }
    #sec_simulation_main h1 {
        font-size: 30px;
    }
    
    #sec_simulation_main .simulation_flow_box .simulation_step li{
        float: left;
        list-style: none;
        margin: 0px;
        padding: 20px;
        box-sizing: border-box;
        width: calc(100% / 2);
        background: #F4F8FF;
        height: 210px;
    }
    
    #sec_simulation_main .simulation_flow_box .simulation_step li p{
        font-size: 16px;
    }
    

}
/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_simulation_main{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_simulation_main .inner{
        padding: 50px 20px 60px 20px;
        box-sizing: border-box;
        
    }
    
    #sec_simulation_main h1 {
        font-size: 40px;
    }
    
    
    #sec_simulation_main .simulation_main_box p{
        font-size: 16px;
    }
    
    #sec_simulation_main .simulation_ele_box{
        padding: 40px 50px;
        margin-top: 50px;
    }
    
    #sec_simulation_main .simulation_ele_box h2 {
        font-size: 28px;
    }
    

    #sec_simulation_main .simulation_ele_box p{
        font-size: 16px;
    }
    
    #sec_simulation_main .inner .btn_more{
        width: 60%;
        margin: 30px auto 0px auto;
    }
    
    #sec_simulation_main .simulation_flow_box{
        padding: 0 0;
        margin-top: 60px;
    }
    #sec_simulation_main .simulation_flow_box h2 {
        font-size: 30px;
        padding: 5px 0;
    }
    
    #sec_simulation_main .simulation_flow_box .simulation_step li{
        float: left;
        list-style: none;
        margin: 0px;
        padding: 20px;
        box-sizing: border-box;
        width: calc(100% / 4);
        background: #F4F8FF;
        height: 210px;
    }
    
    
    #sec_simulation_main .simulation_flow_box .simulation_step li p{
        font-size: 18px;
    }
    
}




/* sec_simulation_contact
------------------------------------------------------------*/

#sec_simulation_contact{
    margin:0;
    padding:0;
    text-align: left;
    background: url("../images/common/bg_line.jpg") left top repeat;
}

#sec_simulation_contact .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 0px;
    box-sizing: border-box;
}

#sec_simulation_contact .inner_in{
    margin: 0 auto;
    max-width: 1200px;
    text-align: left;
    overflow: hidden;
    background: #FFF;
    box-sizing: border-box;
    padding: 30px 10px;
}




#sec_simulation_contact h1 {
    width: 100%;
    margin: 0px 0 60px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 22px;
    color: #003F98;
    box-sizing: border-box;
    line-height: 1.7em;
    font-weight: bold;
    letter-spacing: 0.07em;
}
#sec_simulation_contact h1:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}
#sec_simulation_contact h2 {
    width: 100%;
    margin: 0 0 10px 0;
    padding: 10px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 20px;
    color: #FFF;
    box-sizing: border-box;
    line-height: 1.7em;
    font-weight: bold;
    letter-spacing: 0.1em;
    background: #003F98;
}

#sec_simulation_contact p{
    text-align: center;
    color: #FFF;
    font-size: 16px;
    font-weight: normal;
    margin-bottom: 20px;
}

#sec_simulation_contact .inner_in p{
    width: 100%;
    font-size: 16px;
    line-height: 2em;
    letter-spacing: 0.02em;
    box-sizing: border-box;
    font-weight: bold;
    color:#1F1F1F;
}
table.simulation_form{
	width: 100%;
	margin: 0 auto 0px;
    font-size: 16px;
	}
	
table.simulation_form th{
	width: 100%;
	padding: 15px 10px;
	text-align: left;
	border-bottom: dotted 1px #C9C9C9;
    letter-spacing: 0.05em;
    background: #EEE;
    box-sizing: border-box;
	}
table.simulation_form th em{
    font-style: normal;
    background: #FF4000;
    color:#FFFFFF;
    font-weight: normal;
    padding: 0px 5px 2px 5px;
    border-radius: 4px;
    font-size: 13px;
    margin-left: 20px;
}
table.simulation_form th span{
	margin-right: 55px;
	}
	
table.simulation_form td{
    width: 100%;
	padding: 20px 10px;
    overflow: hidden;
	border-bottom: dotted 1px #C9C9C9;
	}

table.simulation_form td,
table.simulation_form th {
    border-bottom: none;
    display: block;
}

table.simulation_form_sub{
	width: 100%;
    text-align: left;
	
    font-size: 16px;
    border-bottom: none !important;
	}
table.simulation_form_sub td{
    width: 100%;
	padding: 0px 10px 0 0 !important;
    overflow: hidden;
	border-bottom: none !important;
    text-align: left !important;
	}
table.simulation_form_sub tr{
    border-bottom: none !important;
}
table.simulation_form_sub p{
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    width: 100%;
    display: block;
    float: left;
    text-align: left !important;
    font-size: 14px !important;
    font-weight: bold !important;
    color: #333 !important;
    margin: 0 0 5px 0 !important;
    line-height: 1.7 !important;
}


img.icon_required{
	margin: 0 20px;
	}
	
#sec_simulation_contact .privacy{
	width: 100%;
	border: solid 1px #BFBFBF;
	padding: 10px 20px;
	line-height: 1.7;
	height: 224px;
	overflow:auto;
    box-sizing: border-box;
    margin: 0 0;
    font-size: 13px;
        text-align: left !important;
        line-height: 1.5 !important;
        font-weight: normal !important;
	}
	
#sec_simulation_contact .privacy span{
	font-weight: normal;
	font-size: 16px;
	line-height: 3em;
	}
	
#sec_simulation_contact .consent{
	width: calc(100% - 30px);
	margin: 20px 0 40px;
	background-color:#E5E5E5;
	font-size: 10pt;
	height: auto;
	text-align: center;
	padding: 10px 5px;
    
    
	}
	
.button{
	width: 300px;
	background-color: #ED7054;
	font-weight: bold;
	font-size: 14pt;
	color: #fff;
	text-align: center;
	padding: 15px 0;
	border-radius: 5px;
	margin: 0 auto;
	}


input[type='radio']{

    }

label{
	display: inline-block;
margin-left: 0.5em;
}	

input[type="text"] {
	float: left;
	}

textarea{
	margin: 10px 0;
	width: 90%;
	height: 100px;
	}
	

.add-wrap {
	max-width: 100%;
	margin: 0px auto;
}
.add-wrap dt {
	width: 90%;
	float: none;
	padding-top: 5px;
    box-sizing: border-box;
}
.add-wrap dd {
    padding: 10px 0;
    margin-bottom: 0px;
    overflow: hidden;
}
.add-wrap dd:last-child {
 margin-bottom: 0px;
}
input[type="text"],
input[type="tel"],
textarea {
    padding: 0.6em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;6
    font-size: 16px;
    width: 90%;
    box-sizing: border-box;
    margin-top: 0px;
}
input[type="email"]{
    padding: 0.5em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
    width: 200px;
    box-sizing: border-box;
    margin-top: 0px;
}
input[type="date"]{
    padding: 0.5em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
    width: 200px;
    box-sizing: border-box;
    margin-top: 0px;
}
input[type="number"]{
    padding: 0.5em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
    width: 200px;
    box-sizing: border-box;
    margin-top: 0px;
}

select{
    padding: 0.3em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
    width: 200px;
    box-sizing: border-box;
    margin-top: 0px;
}

select.sim_relationship{
    margin-left: 20px !important;
}

select.sim_kyuutou01{
    margin-left: 0px !important;
    width: 200px;
}

select.sim_kyuutou03{
    margin-left: 0px !important;
    width: 200px;
}

select.sim_kyuutou02{
    margin-left: 0px !important;
    width: 300px;
}

textarea{
    height: 200px;
}
/* 
*****************************************/
input[type="text"]:focus,
textarea:focus {
	box-shadow: 0 0 7px #3498db;
	border: 1px solid #3498db;
}

/* 
*****************************************/
input[type="text"]:focus,
textarea:focus {
	box-shadow: 0 0 7px #3498db;
	border: 1px solid #3498db;
}

.radio02-input{
  display: none;
}
.radio02-input + label{
  padding-left: 25px;
  position:relative;
  margin-right: 20px;
    
}
.radio02-input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 7px;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #999;
  border-radius: 50%;
}
.radio02-input:checked + label{
  color: #009a9a;
}
.radio02-input:checked + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  left: 3px;
  width: 11px;
  height: 11px;
  background: #009a9a;
  border-radius: 50%;
}

input[type=text].form-w40p {
	width: 40%;
    margin-right: 20px;
}
input[type=text].form-w80px {
	width: 80px;
}
input[type=tel] {
	width: 65px;
}
input[type=email] {
	width: 90%;
}
input[type=number] {
	width: 100px;
}


/* checkbox------------------- */
/* Base for label styling */
[type="checkbox"]:not(:checked),
[type="checkbox"]:checked {
  position: absolute;
  left: -9999px;
}
[type="checkbox"]:not(:checked) + label,
[type="checkbox"]:checked + label {
  position: relative;
  padding-left: 1.95em;
  cursor: pointer;
  padding-top: 8px;
    font-weight: bold;
    font-size: 17px;
    line-height: 17px;
}
/* checkbox aspect */
[type="checkbox"]:not(:checked) + label:before,
[type="checkbox"]:checked + label:before {
  content: '';
  position: absolute;
  left: 0; top: 5px;
  width: 1.25em; height: 1.25em;
  border: 1px solid #c0cac3;
  background: #fff;
  border-radius: 3px;
  box-shadow: inset 0 1px 3px rgba(0,0,0,.1);
}
/* checked mark aspect */
[type="checkbox"]:not(:checked) + label:after,
[type="checkbox"]:checked + label:after {
  content: '\2713\0020';
  position: absolute;
  top: .35em;
  left: .22em;
  font-size: 1.3em;
  line-height: 0.8;
  color: #009a9a;
  transition: all .2s;
  font-family: 'Lucida Sans Unicode', 'Arial Unicode MS', Arial;
}
/* checked mark aspect changes */
[type="checkbox"]:not(:checked) + label:after {
  opacity: 0;
  transform: scale(0);
}
[type="checkbox"]:checked + label:after {
  opacity: 1;
  transform: scale(1);
}
[type="checkbox"]:checked + label{
  color: #009a9a;
}

/* entry-button ----- */
.form-button-wrap {
	text-align: center;
	margin-bottom: 40px;
}
.form-button {
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	line-height: 1;
	text-align: center;
	display: inline-block;
	padding: 30px 0;
	transition: all 0.2s ease-in-out;
	background-color: #003F98;
	position: relative;
	width: 80%;
	cursor: pointer;
    border: 2px solid #003F98;
    font-weight: bold;
    margin: 2% 0;
}

.form-button:hover {
	background-color: #FFF;
	color: #003F98;
}


.form-button2 {
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	line-height: 1;
	text-align: center;
	display: inline-block;
	padding: 30px 0;
	transition: all 0.2s ease-in-out;
	background-color: #666;
	position: relative;
	width: 80%;
	cursor: pointer;
    border: 2px solid #666;
    font-weight: bold;
    margin: 2% 0;
}

.form-button2:hover {
	background-color: #FFF;
	color: #333;
}

.col_4{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
    box-sizing: border-box;
}
.col_4 > div{
	width: 48%;
    margin: 0px 0px 20px 0px;
	padding: 10px;
    box-sizing: border-box;
}
.radio02 img{
    width: 100%;
    max-width: 260px;
    display: block;
    margin-bottom: 10px;
}

.sim_atention{
    width: 100%;
    display: block;
    float: left;
    text-align: left !important;
    font-size: 13px !important;
    font-weight: normal !important;
    color: #666 !important;
    margin: 10px 0 0 0 !important;
    line-height: 1.7 !important;
}
.form-w80p{
    width: 80px !important;
}
.form-w120p{
    width: 120px !important;
}
.form-w200p{
    width: 200px !important;
}
.form-w350p{
    width: 90% !important;
}
.form-w400p{
    width: 90% !important;
}

@media screen and (min-width: 640px) {
    
    .form-w350p{
    width: 350px !important;
    }
    .form-w400p{
        width: 400px !important;
    }
    
    
}




#sec_simulation_contact .atent_kiki{
    margin-left: 30px;
}
#sec_simulation_contact .atent_kiki li{
    text-align: left;
    margin: 0;
}
#sec_simulation_contact .atent_kiki li p{
    text-align: left;
    font-size: 14px;
    font-weight: normal;
    margin: 0;
}
@media screen and (min-width: 920px) {

    /* sec_simulation_contact
    ------------------------------------------------------------*/
    #sec_simulation_contact{
        margin:0;
        padding:0 0 30px 0;
        text-align: left;
    }
    #sec_simulation_contact .inner{
        padding: 50px 0px;
        
    }
    
    #sec_simulation_contact .inner_in{
        margin: 0 auto;
        max-width: 1200px;
        text-align: left;
        overflow: hidden;
        background: #FFF;
        padding: 50px 50px;;
        margin-top: 10px;
        box-sizing: border-box;
    }
    
    #sec_simulation_contact h1 {
        font-size: 42px;
    }
    
    #sec_simulation_contact h2 {
        font-size: 30px;
    }
    
    
    #sec_simulation_contact p{
        font-size: 20px;
    }
    
    #sec_simulation_contact .privacy{
        display: block
        width: 100%;
        padding: 0 50px;
        margin: 0 auto;
        border: solid 1px #BFBFBF;
        padding: 10px 30px;
        line-height: 1.7;
        height: 224px;
        overflow:auto;
        font-size: 14px;
        text-align: left !important;
        line-height: 1.5 !important;
        }

    #sec_simulation_contact .privacy span{
        font-weight: normal;
        font-size: 20px;
        line-height: 3em;
        }
    
    #sec_simulation_contact .consent{
        width: 100%;
        margin: 20px 0 0 0;
        background-color:#E5E5E5;
        font-size: 14pt;
        height: 50px;
        text-align: center;
        padding: 10px;
        box-sizing: border-box;
        }
    
    table.simulation_form{
            width: 100%;
            max-width: 1160px;
            margin: 0 auto 40px;
            font-size: 16px;
        }

        table.simulation_form th{
            width: 370px;
            padding: 20px;
            text-align: right;
            border-bottom: dotted 1px #C9C9C9 !important;
            letter-spacing: 0.05em;
            background: none;
        }
        table.simulation_form th em{
            font-style: normal;
            background: #FF4000;
            color:#FFFFFF;
            font-weight: normal;
            padding: 0px 5px 2px 5px;
            border-radius: 4px;
            font-size: 13px;
            margin-left: 20px;
        }
        table.simulation_form th span{
            margin-right: 55px;
            }

        table.simulation_form td{
            width: calc(100% - 370px);
            padding: 20px;
            border-bottom: dotted 1px #C9C9C9 !important;
            }

        table.simulation_form td,
        table.simulation_form th {
            border-bottom: none;
            display:table-cell;
        }
    
        table.simulation_form_sub td{
            border-bottom: none !important;
        }
        table.simulation_form_sub td.energygen{
            width: 250px;
        }
        
    
    
        .add-wrap {
            max-width: 100%;
            margin: 0px auto;
        }
        .add-wrap dt {
            width: 120px;
            float: left;
            padding-top: 5px;
        }
        .add-wrap dd {
            padding: 0 0 0 10px;
            margin-bottom: 15px;
            overflow: hidden;
        }
        .add-wrap dd:last-child {
         margin-bottom: 0px;
        }
    
        .form-button {
            width: 40%;
            margin: 0 2%;
        }
        .form-button2 {
            width: 40%;
            margin: 0 2%;
        }
    
        .col_4 > div{
            width: 22%;
            box-sizing: border-box;
            margin: 0px 0px 20px 0px;
            padding: 5px;

        }
    
    
}







ul.sitemaplist{
    margin: 0 auto;
    overflow: hidden;
    list-style: none;
    border-top: 1px dotted #CCCCCC;
}

ul.sitemaplist li {
    text-align: center;
    float: left;
    padding: 0 0;
    width: 100%;
    box-sizing: border-box;
}
ul.sitemaplist li a {
    color:#333;
    font-size: 13px;
    display:block;
    text-decoration:none;
    padding:10px 0;
    margin:0 0 0 0;
    font-weight:bold;
    
    border-bottom: 1px dotted #CCCCCC;
    position: relative;
}
ul.sitemaplist li a:hover{
    color:#FF0000;
    text-decoration: none;
}
ul.sitemaplist li.fline {
    text-align: left;
    float: left;
    padding: 0 0;
    width: 100%;
    box-sizing: border-box;
}

ul.sitemaplist li.fline a {
    color:#333;
    font-size: 13px;
    display:block;
    text-decoration:none;
    padding:10px 0 10px 22px;
    margin:0 0 0 0;
    font-weight:normal;
    border-top:none;
    border-bottom: none;
    /* border-top: 1px dotted #CCCCCC; */
    position: relative;
    
}


ul.sitemaplist li.fline a:before {
    content: '';
    position: absolute;
    top: 50%;
    left:10px;
    display: inline-block;
    width: 5px;
    height: 1px;
    background-color: #CC0000;
}


ul.sitemaplist li.fline a:hover{
    color:#FF0000;
    text-decoration: none;
}


@media screen and (min-width: 920px) {

    ul.sitemaplist{
        float:left;
        margin: 0 auto;
        width: calc(100%/4);
        overflow: hidden;
        list-style: none;
        border-top:none;
        
    }
    ul.sitemaplist li {
        width: 100%;
        text-align: left;
        float: left;
        padding: 5px 20px 5px 20px;
        border-top: none;
        margin-bottom: 10px;
        color: #333;
        font-weight: bold;
        font-size: 14px;
    }
    ul.sitemaplist li a {
        text-decoration: none;
        color: #333;
        font-size: 14px;
        letter-spacing: 0.02em;
        border: none;
        padding: 0 0 0 0px;
        font-weight: bold;
    }
    
    
    
    ul.sitemaplist li.fline {
        width: 100%;
        text-align: left;
        float: left;
        padding: 0 20px;
        border-top: none;
        margin-bottom: 7px;
        color: #333;
        font-weight: normal;
    }
    
    ul.sitemaplist li.fline a {
        text-decoration: none;
        color: #333;
        font-size: 13px;
        letter-spacing: 0.02em;
        border: none;
        padding: 0 0 0 12px;
    }
    
    ul.sitemaplist li.fline a:before {
        content: '';
        position: absolute;
        top: 50%;
        left:0;
        display: inline-block;
        width: 5px;
        height: 1px;
        background-color: #CC0000;
    }
}





/* sec_zoom_info
------------------------------------------------------------*/

#sec_zoom_info{
    margin:0;
    margin-top: 30px;
    padding:0 0 0 0;
    text-align: left;
}

#sec_zoom_info .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 0px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_zoom_info h1 {
    width: 100%;
    margin: 0px 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 24px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    line-height: 1.5;
}

#sec_zoom_info h1:before {
  content: '';
  position: absolute;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  bottom: -15px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}



#sec_zoom_info .zoom_info_box{
    text-align: center;
    margin: 0 auto;
    margin-bottom: 30px;
}


#sec_zoom_info .zoom_info_box p{
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0.05em;
    margin-top: 10px;
}

.zoom_info_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.zoom_info_box_left img{
    width: 100%;
    max-width: 300px;
}

.zoom_info_box_right{
    float: right;
    width: 100%;
    text-align: left;
}



#sec_zoom_info .zoom_merit_box{
    text-align: center;
    margin: 0 auto;
    background: #F4F8FF;
    padding: 30px 10px;
    box-sizing: border-box;
    border-radius: 14px;
}


#sec_zoom_info .zoom_merit_box p{
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0.05em;
    margin-top: 10px;
}


#sec_zoom_info h2 {
    width: 100%;
    margin: 0px 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 18px;
    color: #FF3F00;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    line-height: 1.5;
}

#sec_zoom_info h2:before {
  content: '';
  position: absolute;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  bottom: -15px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #FF3F00;

}

ul.zoom_meritlist{
    margin: 0 auto;
    overflow: hidden;
    list-style: none;
    padding-left: 20px;
    margin-top: 20px;
}

ul.zoom_meritlist li {
    text-align: left;
    float: left;
    padding: 0 0 20px 0;
    width: 100%;
    box-sizing: border-box;
    font-size: 16px;
    font-weight: bold;
    list-style-type:disc !important;
}

ul.zoom_meritlist li p{
    font-size: 14px;
    font-weight: normal;
    margin: 0 !important;
    padding: 0 !important;
}



/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_zoom_info h1:before {
      bottom: -20px;
    }
    #sec_zoom_info h1 {
        font-size: 38px;
    }
    
    .zoom_info_box_left{
        float: left;
        width: 35%;
        max-width: 300px;
        box-sizing: border-box;

    }
    .zoom_info_box_right{
        float: right;
        width: calc(100% - 35%);
        margin-top: 20px;
    }
    
    #sec_zoom_info .zoom_info_box{
        margin-bottom: 50px;
    }
    
    #sec_zoom_info h2 {
        font-size: 24px;
    }
    
    #sec_zoom_info .zoom_merit_box{
        padding: 40px;
    }
    
    ul.zoom_meritlist{
        padding-left: 50px;
    }

    ul.zoom_meritlist li {
        font-size: 24px;
    }

    ul.zoom_meritlist li p{
        font-size: 14px;
    }

}
/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_zoom_info{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_zoom_info .inner{
        padding: 50px 20px 60px 20px;
        box-sizing: border-box;
        
    }
    
    #sec_zoom_info h1 {
        font-size: 40px;
    }
 
    #sec_zoom_info .zoom_info_box p{
        font-size: 16px;
    }
    
        
    .zoom_info_box_left{
        float: left;
        width: 350px;
        max-width: 300px;
        box-sizing: border-box;

    }
    .zoom_info_box_right{
        float: right;
        width: calc(100% - 350px);
        margin-top: 20px;
    }
}




/* sec_zoom_flow
------------------------------------------------------------*/

#sec_zoom_flow{
    margin:0;
    margin-top: 30px;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_zoom_flow .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 0px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_zoom_flow h1 {
    width: 100%;
    margin: 0px 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 24px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    line-height: 1.5;
}

#sec_zoom_flow h1:before {
  content: '';
  position: absolute;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  bottom: -15px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}



.timeline_zoom {
    width: 100%;
    padding: 0 0;
    list-style: none;
    box-sizing: border-box;
}
.timeline_zoom > li {
    overflow: hidden;
    margin: 0;
    position: relative;
    padding: 0 0 5px 0 !important;
    margin: 0 0 10px 0 !important;
}
.timeline_zoom-date {
    padding: 0 !important;
    margin: 0 !important;
    font-weight: bold;
    background: #298AFF;
}
.timeline_zoom-date p{
    color: #FFF;
    padding: 5px 10px;
}


.timeline_zoom-content p{
    width: 100%;
    font-size: 14px;
    font-weight: normal;
    margin-bottom: 10px;
}

.timeline_zoom-content p.thtitle{
    font-size: 20px;
    font-weight: bold;
    margin: 5px 0 0 0;

}


.timeline_zoom-content p.thc_img{
    width: auto;
    float: left;
    margin-right: 0;
}

.timeline_zoom-content p.thc_img spna{
    font-size: 15px;
    letter-spacing: 0em;
}

.timeline_zoom-content p img{
    max-width: 100%;
}


/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_zoom_flow h1:before {
      bottom: -20px;
    }
    #sec_zoom_flow h1 {
        font-size: 38px;
    }
    
   
}
/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_zoom_flow{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_zoom_flow .inner{
        padding: 50px 20px 60px 20px;
        box-sizing: border-box;
        
    }
    
    #sec_zoom_flow h1 {
        font-size: 40px;
    }
 
    .timeline_zoom {
        padding: 30px 50px;
        
    }
    .timeline_zoom > li {
        overflow: hidden;
        position: relative;
        padding: 0 0 30px 0 !important;
        margin: 0 0 0 0 !important;
        border-bottom:none;
        
    }
    .timeline_zoom > li:before {
        content: '';
        width: 6px;
        height: 100%;
        background: #298AFF;
        position: absolute;
        left: 47px;
        top: 0;
    }
    
    .timeline_zoom > li:last-child:before {
        content: '';
        width: 6px;
        height: 10px;
        background: #298AFF;
        position: absolute;
        left: 50px;
        top: 0;
    }
    
    .timeline_zoom-date {
        float: left;
        width: 100px !important;
        font-weight: bold;
        font-size: 15px;
        padding-left: 0px !important;
        box-sizing: border-box;
        letter-spacing: 0;
        background: none;
    }

    .timeline_zoom-date:before {
        content: '';
        width: 100px;
        height: 100px;
        background: #FFF;
        position: absolute;
        left: 0;
        top: 0px;
        border-radius: 100%;
        background: #298AFF;
        z-index: 1;

    }
    
    .timeline_zoom-date p{
        text-align: center;
        font-size: 24px;
        position: relative;
        color: #FFF;
        z-index: 10;
        margin-top: 22px;
    }
    
    
    .timeline_zoom-content {
        width: calc(100% - 120px);
        margin-left: 20px;
        float: left;
    }
    
    .timeline_zoom-content p{
        font-size: 16px;
        margin: 5px 0 10px 0;
        font-weight: normal;
        letter-spacing: 0.05em;
    }
    .timeline_zoom-content p.thtitle{
        font-size: 24px;
        font-weight: bold;
        margin: 5px 0 0 0;
        
    }

    .timeline_zoom-content p.thc_img{
        width: auto;
        float: left;
        margin-right: 50px;
    }
    
    
}



/* sec_consultation_contact
------------------------------------------------------------*/

#sec_consultation_contact{
    margin:0;
    padding:0;
    text-align: left;
    background: url("../images/common/bg_line.jpg") left top repeat;
}

#sec_consultation_contact .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 0px;
    box-sizing: border-box;
}

#sec_consultation_contact .inner_in{
    margin: 0 auto;
    max-width: 1200px;
    text-align: left;
    overflow: hidden;
    background: #FFF;
    box-sizing: border-box;
    padding: 30px 10px;
}




#sec_consultation_contact h1 {
    width: 100%;
    margin: 0px 0 60px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 22px;
    color: #003F98;
    box-sizing: border-box;
    line-height: 1.7em;
    font-weight: bold;
    letter-spacing: 0.07em;
}
#sec_consultation_contact h1:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #003F98;

}


#sec_consultation_contact h2 {
    width: 100%;
    margin: 0 0 10px 0;
    padding: 10px 0;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 20px;
    color: #FFF;
    box-sizing: border-box;
    line-height: 1.7em;
    font-weight: bold;
    letter-spacing: 0.1em;
    background: #003F98;
}

#sec_consultation_contact p{
    text-align: center;
    color: #FFF;
    font-size: 16px;
    font-weight: normal;
    margin-bottom: 20px;
}

#sec_consultation_contact .inner_in p{
    width: 100%;
    font-size: 16px;
    line-height: 2em;
    letter-spacing: 0.02em;
    box-sizing: border-box;
    font-weight: normal;
    color:#1F1F1F;
}

	
#sec_consultation_contact .privacy{
	width: 100%;
	border: solid 1px #BFBFBF;
	padding: 10px 20px;
	line-height: 1.7;
	height: 224px;
	overflow:auto;
    box-sizing: border-box;
    margin: 0 0;
    font-size: 13px;
        text-align: left !important;
        line-height: 1.5 !important;
        font-weight: normal !important;
	}
	
#sec_consultation_contact .privacy span{
	font-weight: normal;
	font-size: 16px;
	line-height: 3em;
	}
	
#sec_consultation_contact .consent{
	width: calc(100% - 30px);
	margin: 20px 0 40px;
	background-color:#E5E5E5;
	font-size: 10pt;
	height: auto;
	text-align: center;
	padding: 10px 5px;
}


table.consultation_form{
	width: 100%;
	padding: 0 !important;
    font-size: 16px;
    box-sizing: border-box;
	}
	
table.consultation_form th{
	width: 100%;
	padding: 15px 10px;
	text-align: left;
	border-bottom: dotted 1px #C9C9C9;
    letter-spacing: 0.05em;
    background: #EEE;
    box-sizing: border-box;
	}
table.consultation_form th em{
    font-style: normal;
    background: #FF4000;
    color:#FFFFFF;
    font-weight: normal;
    padding: 0px 5px 2px 5px;
    border-radius: 4px;
    font-size: 13px;
    margin-left: 20px;
}
table.consultation_form th span{
	margin-right: 55px;
	}
	
table.consultation_form td{
    width: 100%;
	padding: 20px 10px;
    overflow: hidden;
	border-bottom: dotted 1px #C9C9C9;
	}

table.consultation_form td,
table.consultation_form th {
    border-bottom: none;
    display: block;
}


#sec_consultation_contact textarea{
    height: 200px;
}



table.consultation_form2{
	width: 100%;
	margin: 0 auto 0px;
    font-size: 16px;
	}
	
table.consultation_form2 th{
	width: 100%;
	padding: 15px 10px;
	text-align: left;
	border-bottom: dotted 1px #C9C9C9;
    letter-spacing: 0.05em;
    background: #EEE;
    box-sizing: border-box;
	}
table.consultation_form2 th em{
    font-style: normal;
    background: #FF4000;
    color:#FFFFFF;
    font-weight: normal;
    padding: 0px 5px 2px 5px;
    border-radius: 4px;
    font-size: 13px;
    margin-left: 20px;
}
table.consultation_form2 th span{
	margin-right: 55px;
	}
	
table.consultation_form2 td{
    width: 100%;
	padding: 20px 10px;
    overflow: hidden;
	border-bottom: dotted 1px #C9C9C9;
	}

table.consultation_form2 td,
table.consultation_form2 th {
    border-bottom: none;
    display: block;
}


table.consultation_form_sub{
	width: 100%;
    text-align: left;
	
    font-size: 16px;
    border-bottom: none !important;
	}
table.consultation_form_sub td{
    width: 100%;
	padding: 0px 10px 0 0 !important;
    overflow: hidden;
	border-bottom: none !important;
    text-align: left !important;
	}
table.consultation_form_sub tr{
    border-bottom: none !important;
}
table.consultation_form_sub p{
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    width: 100%;
    display: block;
    float: left;
    text-align: left !important;
    font-size: 14px !important;
    font-weight: bold !important;
    color: #333 !important;
    margin: 0 0 5px 0 !important;
    line-height: 1.7 !important;
}


@media screen and (min-width: 920px) {

    /* sec_consultation_contact
    ------------------------------------------------------------*/
    #sec_consultation_contact{
        margin:0;
        padding:0 0 30px 0;
        text-align: left;
    }
    #sec_consultation_contact .inner{
        padding: 50px 0px;
        
    }
    
    #sec_consultation_contact .inner_in{
        margin: 0 auto;
        max-width: 1200px;
        text-align: left;
        overflow: hidden;
        background: #FFF;
        padding: 50px 50px;;
        margin-top: 10px;
        box-sizing: border-box;
    }
    
    #sec_consultation_contact h1 {
        font-size: 42px;
    }
    
    #sec_consultation_contact h2 {
        font-size: 30px;
    }
    
    
    #sec_consultation_contact p{
        font-size: 20px;
    }
    
    #sec_consultation_contact .privacy{
        display: block
        width: 100%;
        padding: 0 50px;
        margin: 0 auto;
        border: solid 1px #BFBFBF;
        padding: 10px 30px;
        line-height: 1.7;
        height: 224px;
        overflow:auto;
        font-size: 14px;
        text-align: left !important;
        line-height: 1.5 !important;
        }

    #sec_consultation_contact .privacy span{
        font-weight: normal;
        font-size: 20px;
        line-height: 3em;
        }
    
    #sec_consultation_contact .consent{
        width: 100%;
        margin: 20px 0 0 0;
        background-color:#E5E5E5;
        font-size: 14pt;
        height: 50px;
        text-align: center;
        padding: 10px;
        box-sizing: border-box;
        }
    
    table.consultation_form{
            width: 100%;
            max-width: 1160px;
            margin: 0 auto 40px;
            font-size: 16px;
            box-sizing: border-box;
        }

        table.consultation_form th{
            width: 370px;
            padding: 20px;
            text-align: right;
            border-bottom: dotted 1px #C9C9C9 !important;
            letter-spacing: 0.05em;
            background: none;
        }
        table.consultation_form th em{
            font-style: normal;
            background: #FF4000;
            color:#FFFFFF;
            font-weight: normal;
            padding: 0px 5px 2px 5px;
            border-radius: 4px;
            font-size: 13px;
            margin-left: 20px;
        }
        table.consultation_form th span{
            margin-right: 55px;
            }

        table.consultation_form td{
            width: calc(100% - 370px);
            padding: 20px;
            border-bottom: dotted 1px #C9C9C9 !important;
            }

        table.consultation_form td,
        table.consultation_form th {
            border-bottom: none;
            display:table-cell;
        }
    
    table.consultation_form2{
            width: 100%;
            max-width: 1160px;
            margin: 0 auto 60px;
            font-size: 16px;
        }

        table.consultation_form2 th{
            width: 270px;
            padding: 20px;
            text-align: right;
            border-bottom: dotted 1px #C9C9C9 !important;
            letter-spacing: 0.05em;
            background: none;
        }
        table.consultation_form2 th em{
            font-style: normal;
            background: #FF4000;
            color:#FFFFFF;
            font-weight: normal;
            padding: 0px 5px 2px 5px;
            border-radius: 4px;
            font-size: 13px;
            margin-left: 20px;
        }
        table.consultation_form2 th span{
            margin-right: 55px;
            }

        table.consultation_form2 td{
            width: calc(100% - 270px);
            padding: 20px;
            border-bottom: dotted 1px #C9C9C9 !important;
            }

        table.consultation_form2 td,
        table.consultation_form2 th {
            border-bottom: none;
            display:table-cell;
        }
    
        table.consultation_form_sub td{
            border-bottom: none !important;
        }
    
}



.timeline_h {
    width: 100%;
    padding: 0 0;
    list-style: none;
    box-sizing: border-box;
}
.timeline_h > li {
    overflow: hidden;
    margin: 0;
    position: relative;
    padding: 0 0 5px 0 !important;
    margin: 0 0 10px 0 !important;
}
.timeline_h-date {
    margin: 0 !important;
    font-weight: bold;
    background: #661A00;
    color: #FFF;
    padding: 5px 10px;
}

.timeline_h-content p{
    width: 100%;
    font-size: 14px;
    font-weight: normal;
    margin-bottom: 20px;
}

.timeline_h-content p.thc_img{
    width: auto;
    float: left;
    margin-right: 0;
}

.timeline_h-content p.thc_img spna{
    font-size: 15px;
    letter-spacing: 0em;
}

.timeline_h-content p img{
    max-width: 100%;
}


/* for Desktop */
@media screen and (min-width: 920px) {
    .timeline {
        padding: 0 100px;
    }
    .timeline > li {
        overflow: hidden;
        margin: 0;
        position: relative;
        padding: 0 !important;
        margin: 0 !important;
        border-bottom:none;
    }
    .timeline-date {
        float: left;
        width: 220px !important;
        padding: 0 !important;
        margin: 0 !important;
        font-weight: bold;
        font-size: 15px;
        
    }
    .timeline-content {
        width: calc(100%-220px);
        height: 60px;
        float: left;
        border-left: 1px #e5e5d1 solid;
        padding: 0 !important;
        margin: 0 !important;
        padding-left: 50px !important;
    }

    
    .timeline-content:before {
        content: '';
        width: 11px;
        height: 11px;
        background: #FB2D3D;
        position: absolute;
        left: 215px;
        top: 8px;
        border-radius: 100%;
    }
    .timeline-content h3{
        font-size: 15px;
    }
    
    
    .timeline_h {
        padding: 0 50px;
        
    }
    .timeline_h > li {
        overflow: hidden;
        position: relative;
        padding: 0 0 20px 0 !important;
        margin: 0 0 0 0 !important;
        border-bottom:none;
        
    }
    .timeline_h > li:before {
        content: '';
        width: 2px;
        height: 100%;
        background: #D2D2D2;
        position: absolute;
        left: 8px;
        top: 0;
    }
    
    .timeline_h > li:last-child:before {
        content: '';
        width: 2px;
        height: 10px;
        background: #D2D2D2;
        position: absolute;
        left: 8px;
        top: 0;
    }
    
    .timeline_h-date {
        float: left;
        width: 20% !important;
        font-weight: bold;
        font-size: 15px;
        padding-left: 50px !important;
        box-sizing: border-box;
        letter-spacing: 0;
        background: none;
        color: #222;
        padding: 0;
    }
    .timeline_h-date:before {
        content: '';
        width: 40px;
        height: 2px;
        background: #D2D2D2;
        position: absolute;
        left: 0;
        top: 12px;
        
    }
    .timeline_h-date:after {
        content: '';
        width: 6px;
        height: 6px;
        background: #FFF;
        position: absolute;
        left: 0;
        top: 4px;
        border-radius: 100%;
        border: 6px solid #7A2901;

    }
    
    .timeline_h-content {
        width: 80%;
        float: left;
    }
    
    .timeline_h-content p{
        font-size: 15px;
    }
    

    .timeline_h-content p.thc_img{
        width: auto;
        float: left;
        margin-right: 40px;
    }
    
}




/* sec_history_head
------------------------------------------------------------*/

#sec_history_head{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_history_head .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_history_head h1 {
    width: 100%;
    margin: 0 0 40px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #661900;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_history_head h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 100%;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #661900;
    transform:skewX(-45deg);
}

.history_head_box{
    overflow: hidden;
}
.history_head_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.history_head_box_left p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}



.history_head_box_right{
    float: right;
    width: 100%;
    text-align: right;
}

.history_head_box_right p{
    text-align: center;
}

.history_head_box_right img{
    width: 100%;
}



/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_history_head h1:before {
        bottom: -5px;
        width: 100%;
        height: 5px;
    }
    #sec_history_head h1 {
        font-size: 30px;
    }
    
    .history_head_box_left p{
        font-size: 14px;
    }

    .history_head_box_left{
        float: left;
        width: calc(100% - 35%);
        padding-right: 30px;
        box-sizing: border-box;   
    }

    .history_head_box_right{
        float: right;
        width: 35%;
        max-width: 400px;
        text-align: right;
    }
    

}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_history_head{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_history_head .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_history_head h1 {
        font-size: 38px;
    }
    .history_head_box_left p{
        font-size: 16px;
    }
    .history_head_box_left{
        float: left;
        width: calc(100% - 35%);
        padding-right: 30px;
        box-sizing: border-box;

    }
    .history_head_box_right{
        float: right;
        width: 35%;
        max-width: 400px;
        text-align: right;
        margin-top: 20px;
    }
    
}

/* sec_history_head
------------------------------------------------------------*/

#sec_history_line{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_history_line .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_history_line h1 {
    position: relative;
    display: inline-block;
    padding: 0 0 0 55px;
    color: #661900;
    text-align: left;
    width: 100%;
    font-size: 26px;
	margin-bottom: 20px;
}

#sec_history_line h1:before {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40px;
  height: 3px;
  background-color: #661900;
}

#sec_history_line h1:before {
  left:0;
}


/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_history_line{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_history_line .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
	#sec_history_line h1 {
        width: 100%;
        font-size: 38px;
		margin-bottom: 50px;
    }
	
	
}




/* sec_history_main
------------------------------------------------------------*/

#sec_history_main{
    margin:0;
    padding:0 0 0 0;
    text-align: left;
}

#sec_history_main .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_history_main h1 {
    position: relative;
    display: inline-block;
    padding: 0 0 0 55px;
    color: #661900;
    text-align: left;
    width: 100%;
    font-size: 26px;
}

#sec_history_main h1:before {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40px;
  height: 3px;
  background-color: #661900;
}

#sec_history_main h1:before {
  left:0;
}


#sec_history_main .inner_in{
    margin: 0 auto;
    max-width: 1200px;
    text-align: left;
    overflow: hidden;
}


#sec_history_main .inner .renovation_box{
    width: 100%;
    box-sizing: border-box;
    display: inline-block;
    text-align: center;
    transition: 1.0s;
    background-size:90%;
    transition: 1.0s;
}

 #sec_history_main .inner .renovation_box_msg{
    position: relative;
    padding: 30px 20px;
    z-index: 2;
    background: #F5F2F1;
    margin-top: 30px;
}


#sec_history_main .inner .renovation_box_msg p{
    width: 100%;
    font-size: 14px;
    line-height: 2em;
    letter-spacing: 0.02em;
    box-sizing: border-box;
    font-weight: normal;
    text-align: left;
}


#sec_history_main .inner .renovation_box_sp{
    
}

#sec_history_main .inner .renovation_box_sp p{
    text-align: center;
    font-size: 18px;
    font-weight: bold;
}

#sec_history_main .inner .renovation_box_sp img{
    width: 100%;
}



@media screen and (min-width: 640px) {
    
    #sec_history_main .inner .renovation_box{
        float:left;
        width: calc(100% - 300px + 40px);
        margin-top: 0px;
        background-size:auto;
    }
    
    #sec_history_main .inner .renovation_box_sp{
        position: absolute;
        right: 0;
        top: 0;
        width: 300px;
        z-index: 0;
        display: block;

    }
    #sec_history_main .inner .renovation_box_sp img{
        margin-top: 50px;
        margin-bottom: 10px;
        width: 100%;
    }
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_history_main{
        padding: 0 0;
        z-index: 2;
    }
    #sec_history_main .inner{
        padding: 70px 0;
        box-sizing: border-box;
    }
    
    #sec_history_main h1 {
        width: 100%;
        font-size: 38px;

    }

    #sec_history_main .inner_in{
        position: relative;
        
    }
    
    
    
    #sec_history_main .inner .renovation_box{
        float:left;
        width: calc(100% - 400px + 40px);
        margin-top: 0px;
        background-size:auto;
    }
    
    #sec_history_main .inner .renovation_box_msg{
        position: relative;
        padding: 50px 60px;
        z-index: 1;
    }
    
    
    #sec_history_main .inner .renovation_box_msg p{
        width: 100%;
        font-size: 16px;
        line-height: 2em;
        letter-spacing: 0.02em;
        box-sizing: border-box;
        font-weight: normal;
        padding-bottom: 15px;
    }
    
    #sec_history_main .inner .renovation_box_sp{
        position: absolute;
        right: 0;
        top: 0;
        width: 400px;
        z-index: 0;
        display: block;

    }
    #sec_history_main .inner .renovation_box_sp img{
        margin-bottom: 25px;
        margin-top: 0px;
        width: 100%;
    }
    
}




/* sec_renovation_flow
------------------------------------------------------------*/

#sec_renovation_flow{
    margin:0;
    margin-top: 0;
    padding:0 0 0 0;
    text-align: left;
    background: url("../images/common/bg_lattice.png") left top repeat;
}

#sec_renovation_flow .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 30px 10px 30px 10px;
    position: relative;
    box-sizing: border-box;
}

#sec_renovation_flow h1 {
    width: 100%;
    margin: 0 0 30px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 26px;
    color: #003F98;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

#sec_renovation_flow h1:before {
    content: '';
    position: absolute;
    bottom: -5px;
    display: inline-block;
    width: 270px;
    height: 4px;
    left: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #003F98;
    transform:skewX(-45deg);
}

.renovation_flow_box{
    overflow: hidden;
}

.renovation_flow_box p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}




.timeline_renovation {
    width: 100%;
    padding: 0 0;
    list-style: none;
    box-sizing: border-box;
}
.timeline_renovation > li {
    overflow: hidden;
    margin: 0;
    position: relative;
    padding: 0 0 5px 0 !important;
    margin: 0 0 10px 0 !important;
}
.timeline_renovation-date {
    padding: 0 !important;
    margin: 0 !important;
    font-weight: bold;
    background: #298AFF;
}
.timeline_renovation-date p{
    color: #FFF;
    padding: 5px 10px;
}


.timeline_renovation-content p{
    width: 100%;
    font-size: 14px;
    font-weight: normal;
    margin-bottom: 10px;
}

.timeline_renovation-content p.thtitle{
    font-size: 20px;
    font-weight: bold;
    margin: 5px 0 0 0;

}


.timeline_renovation-content p.thc_img{
    width: auto;
    float: left;
    margin-right: 0;
}

.timeline_renovation-content p.thc_img spna{
    font-size: 15px;
    letter-spacing: 0em;
}

.timeline_renovation-content p img{
    max-width: 100%;
}



/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    #sec_renovation_flow h1:before {
        bottom: -5px;
        width: 400px;
        height: 5px;
    }
    #sec_renovation_flow h1 {
        font-size: 38px;
    }
    
    
}

/*  画面サイズが920pxまで  */
@media screen and (min-width: 920px) {
    #sec_renovation_flow{
        padding: 0 0;
        margin-top: 0;
        z-index: 2;
    }
    #sec_renovation_flow .inner{
        padding: 50px 10px 60px 10px;
        box-sizing: border-box;
        
    }
    
    #sec_renovation_flow h1 {
        font-size: 38px;
    }
    .renovation_flow_box p{
        font-size: 16px;
    }
    
    .timeline_renovation {
        padding: 30px 50px;
        
    }
    .timeline_renovation > li {
        overflow: hidden;
        position: relative;
        padding: 0 0 30px 0 !important;
        margin: 0 0 0 0 !important;
        border-bottom:none;
        
    }
    .timeline_renovation > li:before {
        content: '';
        width: 6px;
        height: 100%;
        background: #298AFF;
        position: absolute;
        left: 47px;
        top: 0;
    }
    
    .timeline_renovation > li:last-child:before {
        content: '';
        width: 6px;
        height: 10px;
        background: #298AFF;
        position: absolute;
        left: 50px;
        top: 0;
    }
    
    .timeline_renovation-date {
        float: left;
        width: 100px !important;
        font-weight: bold;
        font-size: 15px;
        padding-left: 0px !important;
        box-sizing: border-box;
        letter-spacing: 0;
        background: none;
    }

    .timeline_renovation-date:before {
        content: '';
        width: 100px;
        height: 100px;
        background: #FFF;
        position: absolute;
        left: 0;
        top: 0px;
        border-radius: 100%;
        background: #298AFF;
        z-index: 1;

    }
    
    .timeline_renovation-date p{
        text-align: center;
        font-size: 24px;
        position: relative;
        color: #FFF;
        z-index: 10;
        margin-top: 22px;
    }
    
    
    .timeline_renovation-content {
        width: calc(100% - 120px);
        margin-left: 20px;
        float: left;
    }
    
    .timeline_renovation-content p{
        font-size: 16px;
        margin: 5px 0 10px 0;
        font-weight: normal;
        letter-spacing: 0.05em;
    }
    .timeline_renovation-content p.thtitle{
        font-size: 24px;
        font-weight: bold;
        margin: 5px 0 0 0;
        
    }

    .timeline_renovation-content p.thc_img{
        width: auto;
        float: left;
        margin-right: 50px;
    }
    
    
}

.sec_staff2 {
	padding : 0 0;
	}
	


.sec_staff2 .inner {
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 0 10px 0 10px;
    position: relative;
    box-sizing: border-box;
}

.sec_staff2 .inner p{
    text-align: left;
    margin-left: 0px;
    line-height: 1.8;
	text-align: right;
}


.reform_loan{
	margin-bottom: 10px;
}
.reform_loan div {
	display:flex;
	font-size: 14px;
	margin-bottom: 2px;
}
.reform_loan div dt {
	margin-left: 5px;
	flex-basis:4.8rem;
	text-align: right;
	text-align-last: justify;       /* Chrome・Firefox用 */
	text-justify: inter-ideograph;  /* IE・Edge用 */
}
.reform_loan div dd {
	flex-basis:calc(100% - 4.8rem);
}
.indent {
  text-indent: -1em;
  padding-left: 1em;
}

@media screen and (min-width: 920px) {
    .reform_loan div {
		font-size: 16px;
	}
	
	.reform_loan div dt {
		margin-left: 5px;
		flex-basis:5.4rem;
		text-align: right;
		text-align-last: justify;       /* Chrome・Firefox用 */
		text-justify: inter-ideograph;  /* IE・Edge用 */
	}
	.reform_loan div dd {
		flex-basis:calc(100% - 5.4rem);
	}
	
}








