@charset "UTF-8";
/* CSS Document */

a {
	transition: all 0.3s ease 0s;
}
img {
	transition: all 0.3s ease 0s;
}
h1{
    margin: 0;
    }

.section-ttl {
    margin: 4px auto 10px;
    text-align: left;
    font-size: 40px;
    line-height: 1.2;
    font-family: "Libre Baskerville", serif;
    font-weight: 400;
    font-style: normal;
    color: #646464;
}

.tbl_none{
    display: none !important;
}

.m-aside{
    border-top: none;
    padding-top: 0px;
    margin: 0 0 50px 0;
}

/* EDIT フォーマッ�? */
.ctt_ttl{
    width: 1000px;
    display: block;
    overflow: hidden;
    text-align: left;
    margin: 0 auto 10px;
}
.ctt_ttl ul li{
    display: block;
    overflow: hidden;
    float: left;
    padding: 0 20px;
    border-right: 1px solid #eee;
    font-size: 11px;
}
.ctt_ttl ul li:first-of-type {
    font-size: 9px;
    letter-spacing: 0.1em;
    text-align: center;
    padding: 0 20px 0 0 ;
}
.ctt_ttl ul li:first-of-type img{
    width: 90%;
}
.ctt_ttl ul li:nth-of-type(2){
    font-size: 40px;
    font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", "ＭＳ ゴシック", sans-serif;
    line-height: 2em;
    font-weight: lighter;
}
.ctt_ttl ul li:nth-of-type(3){
    border-right: 1px solid #fff;
    line-height: 1.6em;
    padding: 10px 0 0 20px ;
}
.ctt_ttl ul li:nth-of-type(3) p{
    margin: 0;
}
.ctt_ttl ul span{
    display: block;
    overflow: hidden;
    font-size: 8px;
    letter-spacing: 1em;
    margin-bottom: 5px;
}

/* レイアウ�? */

.ttl_box, .navi, .section-wrapper {
    list-style:none;
    font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", "ＭＳ ゴシック", sans-serif;
}


.ttl_box{
	display: block;
    float: left;
    margin: 0 auto;
    overflow: hidden;
    text-align: center;
    width: 100%;
}
.main_box{
	display: block;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    text-align: center;
    width: 100%;
}
.main_box img{
	display: block;
    margin: 0 auto 0;
    overflow: hidden;
    position: relative;
}

.ttl_text{
	display: block;
	margin: 10px auto 0;
	overflow: hidden;
	width: 100%;
	font-size: 14px;
	text-align: center;
	padding: 20px 0;
	color: #212121;
    letter-spacing: 0.08em;
}

.main_box_logo1{
    display: block;
    left: 26.5vw;
    overflow: hidden;
    position: absolute;
    text-align: center;
    top: 22vw;
}
.main_box_logo2{
    display: block;
    left: 42.3vw;
    overflow: hidden;
    position: absolute;
    text-align: center;
    top: 20vw;
}
.main_box_logo1 img{
    display: block;
    overflow: hidden;
    margin: 0px;
}
.main_box_logo2 img{
    display: block;
    overflow: hidden;
    margin: 0px;
}


.navi{
    display: block;
    overflow: hidden;
    width: 100%;
    text-align: center;
}
.navi ul{
    width: 100%;
    display: block;
    overflow: hidden;
    margin: 0 auto ;
    padding: 0;
	max-width: 1000px;
}
.navi ul li{
    display: inline-block;
    overflow: hidden;
    margin: 10px 10px;
    text-align: center;
    position: relative;
	border-radius: 4px;
	width: 15%;
}
.navi ul li a{
    font-family: "Libre Baskerville", serif;
    font-weight: 400;
    font-style: normal;
    text-decoration: none;
    padding: 7px 5px 5px 5px;
    display: block;
    overflow: hidden;
	font-size: 16px;
}

.navi ul li a::after{
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
	content: "";
	display: inline-block;
	margin-bottom: 2px;
	margin-left: 8px;
	transform: rotate(45deg);
	height: 8px;
	width: 8px;
    vertical-align: .2em;
}
.con1{
    display: block;
    overflow: hidden;
    width: 100%;
    text-align: center;
    margin: 0;
}

.con1 > div {
	display: flex;
    align-items: center;
    overflow: hidden;
    margin: 0 0 0 5%;
    text-align: left;
    padding: 20px 0;
}

.section_header_1,
.section_header_2,
.section_header_3,
.section_header_4 {
    display: block;
    overflow: hidden;
    /*float: right;*/
    position: relative;
    font-size: 0;
}

.section_header_inner {
    width: 60%;
}

.section_header_inner p {
    font-size: 13px;
}

.con1 ul li:nth-of-type(2){
    display: block;
    overflow: hidden;
    width: 500px;
    margin: 0 0 0 50px;
    position: relative;
    /*top: -200px;*/
		color: #3e3e3e;
}

.con1 ul li img{
    width: auto;
    margin: 0 ;
    vertical-align: middle;    
}

.con_come{
    display: block;
    overflow: hidden;
    text-align: left;
    font-size: 14px;
    padding: 0px 0;
}
.con_come p{
    background-color: #f0ded9;
    display: inline-block;
}

.con2{
    display: block;
    overflow: hidden;
    width: 100%;
    text-align: center;
    margin: 70px auto 0;
}
.con2 img{
    width: 124px;
}
.con2 h3::after{
    border-bottom: 1px solid #9e9e9e;
    content: "";
    display: inline-block;
    height: 10px;
    vertical-align: text-top;
    width: 850px;
}
.con2 ul{
    display: block;
    overflow: hidden;
    width: 1000px;
    text-align: left;
    margin: 0 auto 50px;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}
.con2 ul li {
    display: flex;
    overflow: hidden;
    width: 23%;
    margin: 0 20px 40px 0 ;
}

.con2 ul li a{
    display: flex;
    flex-direction: column;
    color: #000;
    text-decoration: none;
    font-size: 12px;
}
.con2 ul li img{
    display: block;
    overflow: hidden;
    width: 100%;
    margin-bottom: 6px;
}

.m-sign-form-btn-area{
    width: 378px;
}
.m-btn-active{
    background-color: #ffa13c;
}

a .icon {
    background-color: #3e3e3e;
    color: #fff;
    font-size: 11px;
    margin: 0;
    padding: 8px 25px;
    text-align: center;
    transition: all 0.3s ease 0s;
    float: right;
    border-radius: 4px;
    font-weight: bold;
    margin-top: auto;
}

a .icon2 {
    background-color: #3e3e3e;
    color: #fff;
    font-size: 10px;
    margin: 10px auto;
    padding: 8px 25px;
    text-align: center;
    transition: all 0.3s ease 0s;
    display: inline-block;
    border-radius: 4px;
}

.sml_ttl_box_underbtn2 {
    display: block;
    overflow: hidden;
    padding: 0 0 80px 0;
    position: relative;
}
.sml_ttl_box_underbtn2 a {
    font-size: 13px;
    display: block;
    overflow: hidden;
    width: 300px;
    margin: 10px auto;
    text-align: center;
    background-color: #3e3e3e !important;
    color: #fff;
	border-radius: 4px;
}

/* under */

.con_under_sharebox{
	width: 100%;
	text-align: center;
}
.con_under_sharebox a {
	width: 67px;
	margin: 5px 10px;
	display: inline-block;
}
.con_under_sharebox a img{
	width: 100%;
}

.con_under_mailbox{
	width: 500px;
	margin: 10px auto 50px;
	padding: 30px 0;
	border: solid 1px #C6BFB5;
	text-align: center;
}
.con_under_mailbox span{
	font-size: 12px;
}
.con_under_mailbox span a{
	display: inline-block;
	text-decoration: underline;
}


.m-sign-form-btn-area{
        margin: 10px auto;
}
.m-btn-active{
    background-color: #444;
}

.layoutbox{
    width: 100%;
    margin: 0;
}
.layoutbox ul{
    width: 1000px;
    margin: 0 auto;
}
.section_header_1 {
    background: url(../esm240617_tfs/small_ttl1.jpg) no-repeat right / contain;
}
.section_header_2 {
    background: url(../esm240617_tfs/small_ttl2.jpg) no-repeat right / contain;
}


@media screen and (min-width:641px) {

/*-----------*/
/*    PC     */
/*-----------*/

/* PC under-mailbox */
.under-mailbox{
	width: 500px;
}

}

@media screen and (min-width: 640px) {

.con1 > div {
    overflow: hidden;
    width: 800px;
    margin: 0 auto;
    text-align: left;
    padding: 0px;
    height: 240px;
}



.section_header_inner {
    width: 1000px;
    margin: 0 auto 0 50px;
}

.section_header_inner p {
    font-size: 14px;
}


.m-btn-active:hover{
    background-color: #ffc17f;
}
.navi ul li:hover{
    opacity: 0.7;
}
.con1 ul li a img:hover {
    opacity: 0.7;
}
.con_items_list p a:hover{
    background-color: #eae0d7;
}
.con2 ul li a:hover{
    opacity: 0.7;
}
.sml_ttl_box_underbtn_footer a:hover{
    background-color: #7d7d7d;
}

.sml_ttl_box_underbtn2 a:hover{
    opacity: 0.7;
}

.con_under_sharebox a img:hover{
    opacity: 0.7;
}

}


@media screen and (max-width: 640px) {
/* 表示領域�?640px未満の場合に適用するスタイル */
    .pc_none{
    display: none !important;
}
    .tbl_none{
    display: block !important;
}
    .sp_none{
    display: block !important;
}
.main_box{
    height: 400px;
}

.main_box img{
    width: 100%;
}

.section-ttl {
    text-align: left;
    margin: 4px auto 8px;
    width: 100%;
    font-size: 25px;
}
.section-ttl img{
    width: 100%;
}

/* EDIT フォーマッ�? スマ�?? ここまで*/

.con2 h3::after{
    width: 50%;
}
.main_box_moji{
    margin: 0 5%;
    width: 90%;
    display: block;
    position: static;
}
.main_box_moji h1{
    font-size: 11px;
    width: auto;
}
.main_box{
    height: auto;
    margin: 0 0 20px 0;
}
.main_box img{
    margin: 0;
}

.ttl_text {
    width: 90%;
    font-size: 14px;
    line-height: 1.8em;
    padding: 14px 5%;
    text-align: left;
    letter-spacing: initial;
}

.main_box_moji2{
    font-size: 12px;
    margin: 0 5%;
    top: 90vw;
    width: 90%;
}

.main_box_logo2{
    margin: 0 5%;
    width: 33%;
    top: 5vw;
}

.main_box_logo3{
    margin: 0 5%;
    width: 33%;
    top: 5vw;
}

.navi{
    width: 100%;
}
.navi ul{
    width: 100%;
    padding: 0px;
    font-size: 20px;
}
.navi ul li{
    width: 35%;
    margin: 0% 1%;
}
.navi ul li a{
	font-size: 14px;
}
.navi ul li a::after {
    top: 40%;
}
.navi ul li img{
    width: 100%;
}
.con1{
    width: 100%;
    padding: 0;
    margin: 15px auto 0;
}
.con2{
    width: 100%;
    padding: 0;
    margin: 40px auto 0;
}
.con1 ul {
    width: 100%;
    height: auto;
}

.con2 h2 {
    width: 100%;
}
.con2 h2 img{
    width: 124px;
}

.con2 ul{
    width: 100%;
    margin: 0 auto;
}
.con2 ul li a{
    font-size: 11px;
}
.con2 ul li{
    width: 43% !important;
    margin: 0 3.5% 26px;
}

.con2 ul li img{
    width: 100%;
}


.con_come{
    font-size: 12px;
}


.sml_ttl_box_underbtn2 {
    width: 100%;
    padding: 0 0 50px 0;
}
.sml_ttl_box_underbtn2 a {
    width: 90%;
}

.icon2{
    padding: 8px 0px !important;
    width: 90%;
}


/* コー�?ィネ�?�ト�?�ソース　ここまで */

.layoutbox ul{
    width: 100%;
}

.con_under_sharebox a{
	width: 45px;
}

.con_under_mailbox{
	width: 95%;
}


}
