/*----------
01.共通
02.ヘッダー
03.コンタクトフッター
04.ナビ
05.フッター
----------*/

/*----------
01.共通
----------*/
@font-face {
font-family: 'Century Gothic';
src:url('../font/Century Gothic.woff2') format('woff2'),
url('../font/Century Gothic.woff') format('woff'),
url('../font/Century Gothic.ttf')  format('truetype'); /*ttf - Safari, Android, iOS*/
font-weight: normal;
font-style: normal;
}

@font-face {
font-family: 'NfMotoyaAporoStd-W1';
src:url('../font/NfMotoyaAporoStd-W1.woff2') format('woff2'),
url('../font/NfMotoyaAporoStd-W1.woff') format('woff'),
url('../font/NfMotoyaAporoStd-W1.otf')  format('opentype'); /*ttf - Safari, Android, iOS*/
font-weight: normal;
font-style: normal;
}

@font-face {
font-family: 'KozGoPr6N-Regular';
src:url('../font/KozGoPr6N-Regular.woff2') format('woff2'),
url('../font/KozGoPr6N-Regular.woff') format('woff'),
url('../font/KozGoPr6N-Regular.otf')  format('opentype'); /*ttf - Safari, Android, iOS*/
font-weight: normal;
font-style: normal;
}

@font-face {
font-family: 'Bembo';
src:url('../font/Bembo.woff2') format('woff2'),
url('../font/Bembo.woff') format('woff'),
url('../font/Bembo.otf')  format('opentype'); /*ttf - Safari, Android, iOS*/
font-weight: normal;
font-style: normal;
}

@font-face {
font-family: 'TsukushiAMaruGothic';
src:url('../font/TsukushiAMaruGothic.woff2') format('woff2'),
url('../font/TsukushiAMaruGothic.woff') format('woff'),
url('../font/TsukushiAMaruGothic.otf')  format('opentype');/* ttf - Safari, Android, iOS*/
font-weight: normal;
font-style: normal;
}



body{
-webkit-font-smoothing: antialiased;
}

#wrapper{
width: 100%;
overflow: hidden;
background: #fff;
color: #231815;
font-family: 'KozGoPr6N-Regular,sans-serif';
}

.contents_in{
max-width: 990px;
margin: 0 auto;
line-height: 2;
}

.contents_in p {
	margin-bottom: 1.5em;
}

.pc{
display: block;
}

.sp{
display: none;
}

.pankuzu{
padding: 13px 0 48px 16px;
font-size: 17px;
/*color: #595757;*/
color: #231815;
font-family: 'KozGoPr6N-Regular';
}

.pankuzu a{
/*color: #595757;*/
color: #231815;
transition: all .4s;
}


/*----------
02.ヘッダー
----------*/

header{
background: #2a344b;
padding: 29px 0 40px;
}

header .contents_in{
max-width: 1075px;
}


header .wpml-ls-legacy-list-horizontal{
font-family: 'Century Gothic','KozGoPr6N-Regular';
font-size: 13px;
line-height: 13px;
max-width: 153px;
margin: 0 0 0 auto;
border:none;
padding: 0;
}

.en header .wpml-ls-legacy-list-horizontal{
max-width: 166px;
}

.fr header .wpml-ls-legacy-list-horizontal{
max-width: 173px;
}

header .wpml-ls-legacy-list-horizontal .wpml-ls-item{
float: left;
position: relative;
margin: 0 9px 0 0;
}

header .wpml-ls-legacy-list-horizontal li a{
color: #fff;
padding: 0;
}

header .wpml-ls-legacy-list-horizontal li::after{
content: "";
height: 16px;
border-left: 1px solid #878c99;
width: 1px;
box-sizing: border-box;
display: inline-block;
/* vertical-align: sub; */
/* margin: 0 5px 0 3px; */
position: absolute;
top: -1px;
right: -4px;
}

header .wpml-ls-legacy-list-horizontal li:nth-child(3){
margin: 0;
}

header .wpml-ls-legacy-list-horizontal li:nth-child(3)::after{
content: none;
}









header #logo_header{
padding: 12px 0 0;
max-width: 356px;
margin: 0 auto;
width: 100%;
}

header #logo_header .logo01{
max-width: 57px;
width: 100%;
float: left;
}

header #logo_header h1{
text-align: center;
max-width: 281px;
width: 100%;
float: left;
/*padding: 18px 0 0 18px;*/
    padding: 0px 0 0 18px;
    color: #fff;
    line-height: 1.6;
    font-size: 14px;
}

header #logo_header h1 img{
max-width: 281px;
width: 100%;
margin: 0 auto;
display: block;
/*padding: 0 0 10px;*/
    padding: 0 0 0px;
}

header #logo_header h1 span{
display: block;
color: #fff;
font-family: 'Bembo';
font-size: 21px;
}


/*----------
03.コンタクトフッター
----------*/

#contact_footer{
padding: 0 0 125px;
}

#contact_footer .cnt_g{
float: left;
text-align: center;
width: 50%;
}

#contact_footer .title{
font-size: 15px;
/*color: #4c4948;*/
color: #231815;
font-family: 'NfMotoyaAporoStd-W1';
}

#contact_footer .cnt_g01 .title{
padding: 0 0 16px;
}

#contact_footer .cnt_g02 .title{
padding: 0 0 29px;
}

#contact_footer .tel_number{
font-size: 40px;
line-height: 40px;
color: #091138;
font-family: 'Century Gothic';
}

#contact_footer .tel_number a{
color: #091138;
}

#contact_footer .next_btn{
font-size: 25px;
color: #091138;
font-family: 'KozGoPr6N-Regular';
}

#contact_footer .next_btn a{
color: #091138;
}

#contact_footer .time_text{
font-size: 15px;
color: #231815;
/*color: #4c4948;*/
font-family: 'NfMotoyaAporoStd-W1';
padding: 10px 0 0;
}

#contact_footer .cnt_g02 .time_text{
padding: 12px 0 0;
}

#contact_footer.active .cnt_g{
float: none;
width: 100%;
}

/*----------
04.ナビ
----------*/

nav{
padding: 0 0 23px;
}

.nav_in{
max-width: 704px;
width: 100%;
margin: 0 auto;
}

.nav_in li{
max-width: 176px;
width: 25%;
float: left;
text-align: center;
font-size: 18px;
font-family: 'NfMotoyaAporoStd-W1';
/*color: #4c4948;*/
color: #231815;
position: relative;
}

.nav_in li::after{
content: "";
width: 1px;
height: 18px;
border-left:1px solid #787777;
box-sizing: border-box;
position: absolute;
top: 0;
right: 0;
}

.nav_in li:nth-child(1)::before{
content: "";
width: 1px;
height: 18px;
border-left:1px solid #787777;
box-sizing: border-box;
position: absolute;
top: 0;
left: 0;
}

.nav_in li a{
/*color: #4c4948;*/
color: #231815;
}






.nav{
padding: 0 0 23px;
}

.nav .menu{
max-width: 704px;
width: 100%;
margin: 0 auto;
}

.en .nav .menu{
max-width: 748px;
}

.menu li{
max-width: 176px;
width: 25%;
float: left;
text-align: center;
font-size: 18px;
font-family: 'NfMotoyaAporoStd-W1';
/*color: #4c4948;*/
color: #231815;
position: relative;
}

.menu li::after{
content: "";
width: 1px;
height: 18px;
border-left:1px solid #787777;
box-sizing: border-box;
position: absolute;
top: 0;
right: 0;
}

.menu li:nth-child(1)::before{
content: "";
width: 1px;
height: 18px;
border-left:1px solid #787777;
box-sizing: border-box;
position: absolute;
top: 0;
left: 0;
}

.menu li a{
/*color: #4c4948;*/
color: #231815;
}

.fr .menu li:nth-child(1) a{
padding: 9px 0;
display: inline-block;
}

.fr .menu li:nth-child(4) a{
padding: 9px 0;
display: inline-block;
}

.fr .menu li::after{
top: 28%;
}

.fr .menu li:nth-child(1)::before{
top: 28%;
}






/*----------
05.フッター
----------*/

footer{
background: #2a344b;
padding: 34px 0 0;
}

footer #logo_footer{
padding: 0 0 35px;
max-width: 356px;
margin: 0 auto;
width: 100%;
}

footer #logo_footer .logo01{
max-width: 57px;
width: 100%;
float: left;
}

footer #logo_footer h1{
text-align: center;
max-width: 281px;
width: 100%;
float: left;
padding: 18px 0 0 18px;
}

footer #logo_footer h1 img{
max-width: 281px;
width: 100%;
margin: 0 auto;
display: block;
padding: 0 0 10px;
}

footer #logo_footer h1 span{
display: block;
color: #fff;
font-family: 'Bembo';
font-size: 21px;
}

footer #logo_footer .FootLogo{
text-align: center;
max-width: 281px;
width: 100%;
float: left;
padding: 18px 0 0 18px;
}

footer #logo_footer .FootLogo img{
max-width: 281px;
width: 100%;
margin: 0 auto;
display: block;
padding: 0 0 10px;
}

footer #logo_footer .FootLogo span{
display: block;
color: #fff;
font-family: 'Bembo';
font-size: 21px;
}


footer #footer_middle{
color: #fff;
max-width: 740px;
margin: 0 auto;
padding: 0 0 45px;
}

footer #footer_middle .cnt_box{
float: left;
text-align: center;
font-size: 18px;
line-height: 27px;
width: 50%;
font-family: 'KozGoPr6N-Regular';
}

footer #footer_middle .cnt_box a{
color: #fff;
}

footer .copyright{
color: #fff;
font-size: 12px;
text-align: center;
padding: 0 0 20px;
font-family: 'Century Gothic';
}

@media only screen and (max-width:1024px){
/*----------
01.共通
----------*/
.contents_in{
width: 96%;
}

/*----------
05.フッター
----------*/

footer #footer_middle .cnt_box{
font-size: 16px;
}


}

@media only screen and (max-width:750px){
/*----------
01.共通
----------*/
.pc{
display: none;
}

.sp{
display: block;
}

.pankuzu{
font-size: 14px;
padding: 13px 0 24px 16px;
}

/*----------
02.ヘッダー
----------*/

header{
padding: 9px 0 20px;
}

header .language_btn{
font-size: 12px;
/* max-width: 110px; */
/*max-width: 155px;*/
}

header .language_btn li::after{
height: 14px;
top: 0;
}

header #logo_header{
max-width: 260px;
width: 100%;
}

header #logo_header h1{
width: 79%;
/*padding: 12px 0 0 5%;*/
padding: 0px 0 0 5%;
}

header #logo_header h1 img{
/*padding: 0 0 5px;*/
padding: 0 0 0px;
}

header #logo_header h1 span{
font-size: 14px;
}

header #logo_header .logo01{
width: 16%;
}




/*----------
03.コンタクトフッター
----------*/

#contact_footer{
padding: 0 0 10px;
}

#contact_footer .cnt_g{
float: none;
width: auto;
margin: 0 auto 30px;
}

#contact_footer .cnt_g01 .title{
padding: 0 0 10px;
}

#contact_footer .cnt_g02 .title{
padding: 0 0 10px;
}

#contact_footer .next_btn{
font-size: 22px;
}


/*----------
04.ナビ
----------*/

nav{
padding: 0 0 3px;
}

.nav_in li{
float: none;
width: auto;
max-width: none;
padding: 0 0 20px;
}

.nav_in li:nth-child(1)::before{
content: none;
}

.nav_in li::after{
content: none;
}




.nav{
padding: 0 0 3px;
}

.menu li{
float: none;
width: auto;
max-width: none;
padding: 0 0 20px;
}

.menu li:nth-child(1)::before{
content: none;
}

.menu li::after{
content: none;
}

.fr .menu li:nth-child(1) a,.fr .menu li:nth-child(4) a{
padding: 0;
display: block;
}


/*ハンバーガーメニュー*/

nav.btn_menu{
position: absolute;
top: 0;
left: 0;
transition: all .4s;
}

nav.active{
width: 100%;
background: #2a344b;
height: 100%;
z-index: 10;
}

.nav_btn{
width: 28px;
height: 22px;
position: relative;
margin: 44px 0 0 10px;

}

.nav_line{
display: inline-block;;
position: absolute;
left: 0;
width: 100%;
height: 2px;
box-sizing: border-box;
border-top:2px solid #fff;
transition: all .4s;
}

.nav_line01{
top: 0;
}

.nav_line02{
top: 10px;
}

.nav_line03{
top: 20px;
}

nav.active .nav_line01{
	-webkit-transform: translateY(10px) rotate(-45deg);
	transform: translateY(10px) rotate(-45deg);
}

nav.active .nav_line02{
	top:12px;
	left: 50%;
	opacity: 0;
	-webkit-animation: active-menu-bar02 .8s forwards;
	animation: active-menu-bar02 .8s forwards;
}

nav.active .nav_line03{
	-webkit-transform: translateY(-10px) rotate(45deg);
	transform: translateY(-10px) rotate(45deg);
}

.nav_in02{
display: none;
float: none;
padding: 30px 0 0;
}

.nav_in02 .menu li{
float: none;
padding: 0 0 30px;
text-align: center;
}

.nav_in02 .menu li:nth-child(1){
padding: 0 0 30px;
}

.nav_in02 .menu li a{
color: #fff;
}

.nav_in02 .menu li{
text-align: center;
font-size: 18px;
font-family: 'NfMotoyaAporoStd-W1';
color: #fff;
}

/*　ENDハンバーガーメニュー*/


/*----------
05.フッター
----------*/

footer #logo_footer{
max-width: 260px;
width: 100%;
padding: 0 0 28px;
}

footer #logo_footer h1{
width: 79%;
padding: 12px 0 0 5%;
}

footer #logo_footer h1 img{
padding: 0 0 5px;
}

footer #logo_footer h1 span{
font-size: 18px;
}

footer #logo_footer .FootLogo{
width: 79%;
padding: 12px 0 0 5%;
}

footer #logo_footer .FootLogo img{
padding: 0 0 5px;
}

footer #logo_footer h.FootLogo span{
font-size: 18px;
}

footer #logo_footer .logo01{
width: 16%;
}

footer #footer_middle{
padding: 0 0 22px;
}

footer #footer_middle .cnt_box{
width: auto;
float: none;
padding: 0 0 25px;
font-size: 14px;
line-height: 26px;
}

footer .copyright{
font-size: 10px;
}



}

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

/*----------
02.ヘッダー
----------*/

header #logo_header {
    margin: 0 10px 0 auto;
    max-width: 250px;
}
}


/*----------
20230316以降追加
----------*/
.HeadNav {
	padding-top: 23px;
}


/*----------
20230509以降追加
----------*/
#Blog {
	width: 96%;
	max-width: 962px;
	margin: auto;
}

#Blog h2 {
  margin: 0 0 22px;
  border-bottom: 1px solid #8d8c8c;
  padding: 0 0 16px 0px;
  box-sizing: border-box;
  /* color: #4c4948; */
  color: #231815;
  font-size: 36px;
  font-family: 'NfMotoyaAporoStd-W1';
}
#Blog h3 {
    margin: 30px 0 22px;
    border-left: 8px solid #2a344b;
    padding: 10px 0 12px 33px;
    box-sizing: border-box;
    /* color: #4c4948; */
    color: #231815;
    font-size: 28px;
    line-height: 1.2;
    font-family: 'NfMotoyaAporoStd-W1';
}
#Blog .mainimg {
	margin: 0 auto 30px;
	width: 70%;
}
#Blog .mainimg img {
	width: 100%;
}

#Archives {
	margin-bottom: 100px;
}
#Archives h2 {
    margin: 0px 0 16px;
    border-left: 4px solid #2a344b;
    border-bottom: none;
    padding: 5px 0 7px 13px;
    box-sizing: border-box;
    /* color: #4c4948; */
    color: #231815;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.2;
}
#Archives .ArchivesBox {
	border-bottom: 1px dotted #ddd;
	margin-bottom: 50px;
	padding-bottom: 50px;
}
#Archives .ArchivesBox .Parts {
	display: flex;
	justify-content: space-between;
} 
#Archives .ArchivesBox .Parts .Photo {
	width: 26%;
}
#Archives .ArchivesBox .Parts .Photo img {
	width: 100%;
	height: auto;
}
#Archives .ArchivesBox .Parts .Excerpt {
	width: 72%;
}

@media only screen and (max-width: 750px) {
	#Archives .ArchivesBox .Parts {
		display: block;
	} 
	#Archives .ArchivesBox .Parts .Photo {
		width: 100%;
	}
	#Archives .ArchivesBox .Parts .Excerpt {
		width: 100%;
	}
}

#pagelist {
	text-align: center;
	font-size: 20px;
	margin-bottom: 40px;
}
#pagelist .page-numbers {
    display: inline-block;
    position: relative;
    z-index: 1;
    text-align: center;
    padding-left: 14px;
    background: #fff;
    border: 1px solid #333;
    color: #333;
    font-size: 22px;
    line-height: 50px;
    border-radius: 25px;
    text-decoration: none;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    padding-left: 0px !important;
    width: 50px;
    margin-left: 5px;
    margin-right: auto;
    margin-top: 50px;
    margin-bottom: 50px;
}

#pagelist .current {
	background: #2a344b;
    color: #fff;
    border: 1px solid #2a344b;
}

.prev {
    display: inline-block;
    position: relative;
    z-index: 1;
    text-align: center;
    padding-left: 14px;
    background: #fff;
    color: #333;
    border: 1px solid #333;
    font-size: 22px;
    line-height: 50px;
    text-decoration: none;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    padding-left: 0px !important;
    width: 80px!important;
    margin-left: 5px;
    margin-right: auto;
    margin-top: 50px;
}
.next {
    display: inline-block;
    position: relative;
    z-index: 1;
    text-align: center;
    padding-left: 14px;
    background: #fff;
    color: #333;
    border: 1px solid #333;
    font-size: 22px;
    line-height: 50px;
    text-decoration: none;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    padding-left: 0px !important;
    width: 80px!important;
    margin-left: 5px;
    margin-right: auto;
    margin-top: 50px;
}


/*20230626追加for_TOP*/
.radius_ti {
    border-radius:2em ;
    background-color: #2a344b;
    color: #fff;
    font-weight: bold;
    padding: .1em 1.2em;
    font-size: 1.2em;
    justify-content: center;
    text-align: center;
    display: inline-block;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    margin-bottom: 30px;
}
.Resolution_01 {
    display: flex;
    margin-bottom: 20px;
    align-items: center;
    flex-wrap: nowrap;
}
.Resolution_01 .Numbers {
    width: 100px;
}
@media only screen and (max-width: 750px) {
    .Resolution_01 {
        flex-wrap: wrap;
    }
    .Resolution_01 .Numbers {
        width: 50px;
    }
}
.Resolution_01 div {
    margin-right: 14px;
}
.Resolution_01 div.ill {
    width: 300px;
}
.Resolution_01 div span {
    color: #ff0000;
}
.Resolution_23 {
    display: flex;
    margin-bottom: 20px;
    justify-content: space-between;
}
@media only screen and (max-width: 750px) {
    .Resolution_01 div.ill {
        margin: auto;
    }
    .Resolution_23 {
        display: block;
    }
}
.Resolution_02,
.Resolution_03 {
    width: 48%;
    display: flex;
}
@media only screen and (max-width: 750px) {
    .Resolution_02,
    .Resolution_03 {
        width: 100%;
    }
}
.Resolution_02 .Numbers {
    width: 100px;
    min-width: 100px;
}
@media only screen and (max-width: 750px) {
    .Resolution_02 {
        flex-wrap: wrap;
    }
    .Resolution_02 .Numbers {
        width: 50px;
        min-width: 50px;
    }
}
.Resolution_03 .Numbers {
    width: 100px;
    min-width: 100px;
}
@media only screen and (max-width: 750px) {
    .Resolution_03 {
        flex-wrap: wrap;
    }
    .Resolution_03 .Numbers {
        width: 50px;
        min-width: 50px;
    }
}
.Resolution_02 div figure {
    width: 42%;
    margin-bottom: 0;
}
.Resolution_03 div figure {
    width: 54%;
    margin-bottom: 0;
}
@media only screen and (max-width: 750px) {
    .Resolution_02 div figure,
    .Resolution_03 div figure {
        margin: auto;
    }
}
.comparison {
    position: relative;
}
.comparison_txt {
    position: absolute;
    top: 10px;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
}
@media only screen and (max-width: 750px) {
    .comparison_txt {
        font-size: .8em;
    }
}
