@charset "utf-8";

/*btn*/
.btn_no_transparent {
    position: relative;
    max-width: 270px;
    width: 100%;
}

.btn_no_transparent:before {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    border-radius: 25px;
    z-index: 9;
}

.btn_no_transparent .btn {
    margin-top: 0;
}

.basic_layout .btn_col01 .btn,
.basic_layout .btn_col02 .btn,
.basic_layout .btn_col03 .btn {
    margin-top: 0;
}

.btn_col01,
.btn_col02,
.btn_col03 {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}


.btn_col01 .btn {
    width: 100%;
}

.btn_fit.btn_col01 .btn {
    width: auto;
    max-width: 100%;
}

.btn_col02 .btn {
    width: calc(50% - 10px);
}

.btn_col02 .btn {
    margin-left: 20px;
}

.btn_col02 .btn_no_transparent:hover {
    opacity: 1;
}

.btn_col02 .btn_no_transparent a {
    z-index: 11;
    position: relative;
}

.btn_col02 .btn:nth-of-type(2n + 1) {
    margin-left: 0;
}

.btn_col03 .btn {
    width: calc(33.3% - 14px);
}

.btn_col03 .btn {
    margin-left: 20px;
}

.btn_col03 .btn:nth-of-type(3n + 1) {
    margin-left: 0;
}

.btn06 {
    border-radius: 25px;
    padding: 8px 20px 8px 30px;
    background: #f7931e;
    font-size: 1.6rem;
    min-width: 160px;
    text-align: center;
    position: relative;
    z-index: 11;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.btn06:hover {
    opacity: 0.7;
}

.btn06 span {
    position: relative;
    display: inline-block;
    color: #fff;
    max-width: 100%;
}

.btn06:after,
.btn06:before {
    content: '';
    position: absolute;
    top: 50%;
    display: block;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    width: 8px;
    height: 8px;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
}

.btn06:after {
    left: 5px;
}

.btn06:before {
    left: 12px;
}

/*header02*/
.header02 {
    border-bottom: 0;
    /*border-bottom: 1px solid #feacb1;*/
}

/*mod_column*/
.mod_column {
    display: flex;
    flex-wrap: wrap;
}

.column_item {
    text-decoration: none;
}



/***********************************************
ここから追加 
***********************************************/




/*pc*/
@media screen and (min-width: 1041px) {
    /*header02*/
    .header02 .nav_li>a {
        padding: 0 15px;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        height: 80px;
        position: relative;
        min-width: 100px;
    }

    .header02 .nav_li {
        /* border-left: 1px solid #e2e2e2; */
    }

    .nav_li.pc_none+.nav_li {
        border-left: 0
    }

    .header02 .header_main_home {
        width: 75px;
    }

    .list_parent>.nav_li strong {
        display: block;
        font-size: 16px;
        color: #6c6c6c;
    }

    .list_parent>.nav_li em {
        font-size: 1.1rem;
        color: #fec3c7;
    }

    .list_parent>.has_child>a:before {
        content: '';
        position: absolute;
        bottom: 20px;
        left: 50%;
        -webkit-transform: translateX(-50%) rotate(45deg);
        transform: translateX(-50%) rotate(45deg);
        border-bottom: 2px solid #f11e8b;
        border-right: 2px solid #f11e8b;
        width: 9px;
        height: 9px;
    }

    .has_child .sub_menu_block_ttl>em {
        display: none;
    }

    .has_child .sub_menu_block_ttl>strong {
        font-size: 2.8rem;
        color: #fff;
        font-weight: normal;
    }


    
    /***********************************************
    ここから追加 
    ***********************************************/
}

/*pctb*/
@media all and (min-width: 768px) {

    /*header02*/
    .header02 .header_main_home {
        background: #fff;
    }

    /*mod_column*/
    .column_03 .column_item {
        width: 32%;
        margin-left: 2%;
    }

    .column_03 .column_item:nth-of-type(3n + 1) {
        margin-left: 0;
    }

    .column_04 .column_item {
        width: 23.5%;
        margin-left: 2%;
    }

    .column_04 .column_item:nth-of-type(4n + 1) {
        margin-left: 0;
    }

    .column_04 .column_item:nth-of-type(n + 5) {
        margin-top: 15px;
    }

    /*btn*/
    .btn_left_pc {
        justify-content: start;
    }
    

    /***********************************************
    ここから追加 
    ***********************************************/
}

/*特殊1*/
@media screen and (min-width: 1041px) and (max-width: 1350px) {
    .message_btn .btn06 {
        font-size: 1.2rem;
    }
}

/*特殊2*/
@media screen and (min-width: 768px) and (min-width: 1400px) {

}

/*tbsp*/
@media screen and (max-width: 1040px) {
    .header02 {
        height: 70px;
    }

    .header02 .header02_nav_sp .nav_li>a em {
        display: none;
    }

    .header02 .header02_nav_sp .nav_li>a strong {
        font-weight: normal;
    }

    .header02 .header02_nav_sp .nav_li {
        border-bottom: 1px solid #ffc6ca;
        cursor: pointer;
        background: #f11e8b;
    }

    /***********************************************
    ここから追加 
    ***********************************************/

}

/*tb*/
@media screen and (min-width: 768px) and (max-width: 1040px) {
    /* header02 */
    .header02 .hm_wrap {
        right: 15px;
        top: 17px;
    }

    /*ボタン*/
    .btn_col_tb01.btn_col01,
    .btn_col_tb01.btn_col02,
    .btn_col_tb01.btn_col03 {
        flex-direction: column;
        align-items: center;
    }

    .btn_col_tb01.btn_col01 .btn,
    .btn_col_tb01.btn_col02 .btn,
    .btn_col_tb01.btn_col03 .btn {
        width: 100%;
        margin-left: 0;
    }

    /***********************************************
    ここから追加 
    ***********************************************/
}


/*sp*/
@media screen and (max-width: 767px) {
    .header02 {
        height: 49px;
    }
    /*ボタン*/
    .btn_col_sp01.btn_col01,
    .btn_col_sp01.btn_col02,
    .btn_col_sp01.btn_col03 {
        flex-direction: column;
        align-items: center;
    }

    .btn_col_sp01.btn_col01 .btn,
    .btn_col_sp01.btn_col02 .btn,
    .btn_col_sp01.btn_col03 .btn {
        width: 100%;
        margin-left: 0;
    }

    .btn_col_sp01.btn_col02 .btn+.btn,
    .btn_col_sp01.btn_col03 .btn+.btn {
        margin-top: 15px;
    }

    .btn_no_transparent {
        max-width: calc(100vw - 60px);
    }

    .btn06 {
        max-width: none;
        font-size: 1.9rem;
        min-width: auto;
    }

    .btn_fit.btn_col01 .btn {
        width: 100%;
        max-width: calc(100vw - 60px);
    }

    /*mod_column*/
    .column_02_sp .column_item {
        width: 47.5%;
        margin-left: 5%;
    }

    .column_02_sp .column_item:nth-of-type(2n + 1) {
        margin-left: 0;
    }

    .column_02_sp .column_item:nth-of-type(n + 3) {
        margin-top: 4%;
    }

    .column_03_sp .column_item {
        width: 32%;
        margin-left: 2%;
    }

    .column_03_sp .column_item:nth-of-type(3n + 1) {
        margin-left: 0;
    }

}
@charset "utf-8";

/*共通*/

#under .catch, .imglink_box_ttl, .reason_line_text_ttl, h2, h3, h4, h5 {
	font-family: 'M PLUS Rounded 1c', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, "メイリオ", Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	/* font-family: "Sawarabi Mincho","游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝","MS PMincho", serif; */
}
/* M PLUS Rounded || Sawarabi Mincho を使うときコメント外す */
.ttl_top_lv02 {
    /* font-weight: normal; */
}

#under .catch {
    margin: 7rem 0 7rem;
    font-size: 2.7rem;
    color: #fe979e;
}

#gpress .header03 {
	position: relative;
}

#gpress .f_bnr_s01,#gpress .f_bnr_s02,
#gpress .f_bnr_s03,#gpress .f_bnr_s04 {
	/*border: 1px solid #d0d0d0;*/
}

.hm_txt {
	color: #f11e8b;
}

.ai_bnr {
	width: 206px;
	bottom: 40px;
	right: 9px;
	z-index: 100;
	position: fixed;
	cursor: pointer;
}

.ai_bnr img {
	transition: 0.5s;
}

.ai_bnr:hover img {
	opacity: 0.6;
}

/*背景画像系*/
.before_footer_hasbg01:before {
	background: url(../images/fbg.jpg) center center no-repeat;
	background-size: cover;
}

.before_footer02:before {
	/*background: url(../images/footer_bg01.jpg) center top no-repeat;*/
}

.bg_opactiy:before {
	background: rgba(81, 46, 29, 0.75);
}

.parallax_title .h2box {
	background: rgba(241, 30, 139, 0.33);
}
.table_price td,
.table_price th {
	width: 50%;
}
/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
imglink
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.imglink_box .box:nth-of-type(1):after {
	/*background-image: url(../images/imglink01.jpg); */
}
.imglink_box .box:nth-of-type(2):after {
	/*background-image: url(../images/imglink02.jpg); */
}
.imglink_box .box:nth-of-type(3):after {
	/*background-image: url(../images/imglink03.jpg); */
}
.imglink_box .box:nth-of-type(4):after {
	/*background-image: url(../images/imglink04.jpg); */
}
.imglink_box .box:nth-of-type(5):after {
	/*background-image: url(../images/imglink05.jpg); */
}
.imglink_box .box:nth-of-type(6):after {
	/*background-image: url(../images/imglink06.jpg); */
}
.imglink_box .box:nth-of-type(7):after {
	/*background-image: url(../images/imglink07.jpg); */
}
.imglink_box .box:nth-of-type(8):after {
	/*background-image: url(../images/imglink08.jpg); */
}
.imglink_box .box:nth-of-type(9):after {
	/*background-image: url(../images/imglink09.jpg); */
}
/*.imglink_box.set01 .box,*/
.imglink_box .box {
	min-height: 230px;
}
.imglink_box .box .box_inner {
	height: 100%;
	width: 100%;
	display: block;
	min-height: auto;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_setbox
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.mod_setbox .setbox_img { height: 250px; }

.set01 .box:nth-of-type(1) .setbox_img {
	/*background-image: url(../images/top_setimg01.jpg);*/
}
.set01 .box:nth-of-type(2) .setbox_img {
	/*background-image: url(../images/top_setimg02.jpg);*/
}
.set01 .box:nth-of-type(3) .setbox_img {
	/*background-image: url(../images/top_setimg03.jpg);*/
}
.mod_setbox .box {
	background: #e6e6e6;
}
.mod_setbox .setbox_img:before {
	background: rgba(0,0,0,0.43);
}
/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
bg系
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.parallax_bg {
	/*background: url(../images/bg01.jpg) center center no-repeat;*/
}

.img_bg_block.img_bg_block01:before {
	/*background-image: url('../images/top_bg01.jpg');*/
	/*background-size: cover;*/
}


.img_bg_stairs:before {
/*	background-image: url('../images/stairs_bg.png');
	width: 1200px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-position: right bottom;*/
}

.mod_greeting .greeting_wrap {
    /*background: rgba(255,255,255,0.87);*/
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_color_box
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.mod_color_box .color_box_item:nth-of-type(1) {
	background: #ccc;
	border: 1px solid #000;
}
.mod_color_box .color_box_item:nth-of-type(1) .color_box_ttl em {
	background: #ace;
}

.mod_color_box .color_box_item:nth-of-type(2) {
	background: #4ac;
	border: 1px solid #caa;
}
.mod_color_box .color_box_item:nth-of-type(2) .color_box_ttl em {
	background: #1ac;
}

.mod_color_box .color_box_item:nth-of-type(3) {
	background: #6ea;
	border: 1px solid #eea;
}
.mod_color_box .color_box_item:nth-of-type(3) .color_box_ttl em {
	background: #78a;
}

.pickup_check_box p:after,
.pickup_check_box p:before {
    background: #ffac43;
}

/*btn*/

.btn_width_auto {
    max-width: inherit !important;
    display: inline-block !important;
    width: auto !important;
}


/*その他の追加変更 ここから*/
.f_logo {
	margin-bottom: 30px;
}

.f_txt p+p {
	margin-top: 10px;
}

.f_txt {
	margin-bottom: 30px;
}
.header02 .nav_li > a>span {
	color: #f11e8b;
	font-size: 1.1rem;
	display: block;
	margin-top: 2px;
	padding-bottom: 15px;
}



.mv_max {
position: relative;
}
main#under:before,.mv_max:before {position: absolute;content: "";background: url(../images/kasou_tl.png) center top  no-repeat;background-size: contain;top: 0px;left: 50%;-webkit-transform: translate(-50%, 0%);transform: translate(-50%, 0%);width: 100%;height: 34px;z-index: 10;}
.mv_max:after {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background: url(../images/mv_txt_pc.png) center center no-repeat;
	background-size: contain;
	left: 0;
	top: 0;
	z-index: 10;
}

.title_set05 {
	margin-top: 17px;
}

.header02 .sub_menu_block_ttl>span {
	display: none;
}
.top_newsbox {width: 48%;}

.top_newsbox .btn01 {
	min-width: 200px;
}

.top_newsblock {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.top_newsbox .ttl_top_lv02 {
	text-align: left;
	margin-bottom: 0;
}

.top_newsarea {
	margin-top: 50px;
	margin-bottom: 60px;
}

.top_newsblock .tl_block {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 30px;
}

.top_information_dl dt {
	color: #f11e8b;
	padding-right: 20px;
}

.top_information_dl+dl.top_information_dl {
	margin-top: 10px;
	}

.top_information_dl {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
}

.top_newsbox .eigyou01 th,.top_newsbox .eigyou01 td {
	font-size: 1.1rem !important;
}

.txtf {
	color: #f11e8b;
}

.top_newsbox .eigyou01 {
	margin-top: 20px;
}

.top_menu {
	background: url(../images/top_menu_bg.jpg) center center no-repeat;
	background-size: cover;
	padding-top: 60px;
	padding-bottom: 60px;
}

.top_menu_panel>li>a {
	-webkit-box-shadow: 0 1px 10px 1px rgba(241,30,139,0.25);
	-moz-box-shadow: 0 1px 10px 1px rgba(241,30,139,0.25);
	box-shadow: 0 1px 10px 1px rgba(241,30,139,0.25);
	display: block;
	text-decoration: none;
	background: #fff;
	position: relative;
}

.top_menu_panel>li>a:before {
	background: url(../images/top_menu01_icon.png) left top no-repeat;
	background-size: contain;
	width: 100%;
	height: 100%;
	position: absolute;
	content: "";
	left: 0;
	top: 0;
	z-index: 10;
	transition: 0.5s ease;
}

.top_menu_panel>li>a:after {
	background: url(../images/top_menu01.png) left top no-repeat;
	background-size: contain;
	width: 100%;
	height: 100%;
	position: absolute;
	content: "";
	left: 0;
	top: 0;
	z-index: 11;
}
.top_menu_panel>li:nth-child(2)>a:before {
	background-image: url(../images/top_menu02_icon.png);
}

.top_menu_panel>li:nth-child(2)>a:after {
	background-image: url(../images/top_menu02.png);
}

.top_menu_panel>li:nth-child(3)>a:before {
	background-image: url(../images/top_menu03_icon.png);
}

.top_menu_panel>li:nth-child(3)>a:after {
	background-image: url(../images/top_menu03.png);
}

.top_menu_panel>li:nth-child(4)>a:before {
	background-image: url(../images/top_menu04_icon.png);
}

.top_menu_panel>li:nth-child(4)>a:after {
	background-image: url(../images/top_menu04.png);
}

.top_menu_panel>li:nth-child(5)>a:before {
	background-image: url(../images/top_menu05_icon.png);
}

.top_menu_panel>li:nth-child(5)>a:after {
	background-image: url(../images/top_menu05.png);
}

.top_menu_panel>li:nth-child(6)>a:before {
	background-image: url(../images/top_menu06_icon.png);
}

.top_menu_panel>li:nth-child(6)>a:after {
	background-image: url(../images/top_menu06.png);
}

.top_menu_panel>li:nth-child(7)>a:before {
	background-image: url(../images/top_menu07_icon.png);
}

.top_menu_panel>li:nth-child(7)>a:after {
	background-image: url(../images/top_menu07.png);
}

.top_menu_panel>li:nth-child(8)>a:before {
	background-image: url(../images/top_menu08_icon.png);
}

.top_menu_panel>li:nth-child(8)>a:after {
	background-image: url(../images/top_menu08.png);
}

.top_menu_panel>li:nth-child(9)>a:before {
	background-image: url(../images/top_menu09_icon.png);
}

.top_menu_panel>li:nth-child(9)>a:after {
	background-image: url(../images/top_menu09.png);
}

.top_menu_panel>li:nth-child(10)>a:before {
	background-image: url(../images/top_menu10_icon.png);
}

.top_menu_panel>li:nth-child(10)>a:after {
	background-image: url(../images/top_menu10.png);
}
.top_menu_panel {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	margin-top: -30px;
}

.top_menu_panel>li {
	width: 176px;
	height: 176px;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	margin-top: 30px;
}

.top_menu_panel>li .txt {
	opacity: 0;
	transition: 0.5s ease;
	font-size: 1.4rem;
	padding: 15px;
	line-height: 1.6;
	z-index: 20;
	position: relative;
}


.top_reason_panel {
	margin-left: 50px;
	margin-right: 50px;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	margin-top: -2.75%;
}

.top_reason_panel>li {
	width: 31.5%;
	border: 1px solid #cccccc;
	border-radius: 20px;
	overflow: hidden;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
	flex-direction: column;
	margin-top: 2.75%;
}

.top_reason_panel .tl {
	padding: 25px 25px 18px 25px;
	color: #f11e8b;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.05em;
}

.top_reason_panel .txt {
	padding: 0 25px 25px 25px;
}

.top_reason_panel>li:nth-child(3n-1) .img {order: 2;}

.top_reason_panel>li:nth-child(3n-1) {
	justify-content: space-between;
}

.top_reason_panel>li:nth-child(3n-1) .txt_block {
	order: 1;
}
.top_reason .btn {
	margin-top: 40px;
}
.top_greeting {
	background: url(../images/top_greeting_bg.jpg) center center no-repeat;
	background-size: cover;
	padding-top: 60px;
	padding-bottom: 60px;
}

.top_greeting_inner {
	position: relative;
}

.top_greeting_inner:before {
	position: absolute;
	content: "";
	pointer-events: none;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background-image: url(../images/top_greeting_kazari01.png),url(../images/top_greeting_kazari02.png),url(../images/top_greeting_kazari03.png),url(../images/top_greeting_kazari04.png);
	background-position: left top,right top,left bottom, right bottom;
	background-size: 76px 116px,76px 116px,76px 116px,76px 116px;
	background-repeat: no-repeat,no-repeat,no-repeat,no-repeat;
	z-index: 100;
}

.top_greeting_inner:after {background: url(../images/top_greeting_kazari05.png) center top no-repeat;background-size: 814px auto;position: absolute;content: "";width: 90%;width: -webkit-calc(100% - 190px);width: calc(100% - 190px);height: 22px;top: -8px;left: 50%;-webkit-transform: translate(-50%, 0%);transform: translate(-50%, 0%);}

.top_greeting_inner02 {
	padding: 40px 95px 35px;
}

.top_greeting_inner02:before {
	position: absolute;
	content: "";
	pointer-events: none;
	bottom: 116px;
	height: 80%;
	height: -webkit-calc(100% - 232px);
	height: calc(100% - 232px);
	left: 0;
	width: 100%;
	border-left: 4px dotted #fffbf7;
	border-right: 4px dotted #fffbf7;
}

.top_greeting_inner02:after {
	position: absolute;
	content: "";
	width: 90%;
	width: -webkit-calc(100% - 190px);
	width: calc(100% - 190px);
	height: 2px;
	bottom: 0;
	left: 50%;
	-webkit-transform: translate(-50%, 0%);
	transform: translate(-50%, 0%);
	background: #fffbf7;
}

.top_greeting_inner .ttl_top_lv02 {
	background: rgba(255, 255, 255, 0.6);
	padding: 20px;
	margin-bottom: 20px;
}

.top_greeting_inner .btn_block {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: center;
}

.top_greeting_inner .btn_block li+li {
	margin-left: 40px;
}

.contact_area {
	position: relative;
}
.contact_area:before {
	position: absolute;
	content: "";
	background: #f17cb7;
	background: -moz-linear-gradient(left,  rgba(249,195,134,1) 0%, rgba(241,124,183,1) 40%, rgba(241,124,183,1) 60%, rgba(249,195,134,1) 100%);
	background: -webkit-linear-gradient(left,  rgba(249,195,134,1) 0%,rgba(241,124,183,1) 40%,rgba(241,124,183,1) 60%,rgba(249,195,134,1) 100%);
	background: linear-gradient(to right,  rgba(249,195,134,1) 0%,rgba(241,124,183,1) 40%,rgba(241,124,183,1) 60%,rgba(249,195,134,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f9c386', endColorstr='#f9c386',GradientType=1 );
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.contact_area>* {
	position: relative;
	text-align: center;
	color: #fff;
	padding: 60px 0;
}

.contact_area .tl {font-family: 'M PLUS Rounded 1c', sans-serif;font-size: 3.7rem;letter-spacing: 0.1em;line-height: 1.4;margin-bottom: 30px;}

.contact_area .btn_block {
	margin-top: 50px;
	display: inline-block;
}

.contact_area .btn_block img {
	max-width: 320px;
}
.brn_y-tokugawa {
	text-align: center;
}

.brn_y-tokugawa a {
	display: inline-block;
}
.top_page_wrap .toppage_none {
display:none;
}
.f_bnr {
	margin-top: 60px;
	margin-bottom: 60px;
}
/*****************************
------------------------------
@media
------------------------------
*****************************/

/*pc*/
@media screen and (min-width: 1041px)  {

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

	.header02 .header_main h1 {
		width: 404px;
		margin-top: 19px;
		margin-left: 20px;
	}
	.header02 .sub_menu_block {
		border-top: 1px solid #fff;
	}

	.header02 .header_info_other {
		width: 251px;
	}

	.header02 .nav_li {
		max-height: 100px;
	}

	.header02 .nav_li > a {
		height: 100px;
	}

	.header02 .header_main_home {
		width: 100px;
	}
	.header02 .header_info_other_mini {
		margin-right: 150px;
	}
	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	vertical_ttl
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

	.vertical_ttl {
		font-size: 1.6vw;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	img_bg_greeting
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.img_bg_block.img_bg_greeting:before {
		background-size: 2000px;
	}

	/*その他の追加変更 ここから*/
ul.list_parent>.nav_li:first-child a {
	color: #f11e8b;
	font-size: 1.1rem;
	padding-top: 14px;
	position: relative;
}

ul.list_parent>.nav_li:first-child a:before {
	position: absolute;
	content: "";
	background: url(../images/h_home.png) center center no-repeat;
	background-size: contain;
	width: 18px;
	height: 18px;
	top: 24px;
	left: 50%;
	-webkit-transform: translate(-50%, 0%);
	transform: translate(-50%, 0%);
}
.top_menu_panel>li>a:hover {
	opacity: 1;
	background: #ffd4ea;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}

.top_menu_panel>li>a:hover .txt {
	opacity: 1;
	transition: 0.5s ease;
}

.top_menu_panel>li>a:hover:before {
	opacity: 0.2;
	transition: 0.5s ease;
}
}

/*pctb*/
@media all and (min-width: 768px)  {
	.bnr_col03 .mod_bnr_box {
		width: 30%;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header01
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header01 h1 {
		width: 285px;
		float: left;
		margin-top: 16px;
	}

	.header01 .logo_center h1 {
		float: none;
		margin-left: auto;
		margin-right: auto;
	}

	.header01 .h_bnr {
		width: 190px;
		margin-right: 20px;
	}

	.header01 .h_info {
		width: 490px;
	}

	.header01 .has_child > .sub_menu_block > .sub_menu > .nav_li_child:hover > a {
		background: #81c9e2;
	}

	.header01 .nav_li.has_child > .sub_menu_block > .sub_menu > .nav_li_child:first-of-type:before {
		top: -11px;
		border-width: 0 11px 11px 11px;
	}

	.header01 .has_child:hover > .sub_menu_block {
		border: 0;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

	.header02 .info_forth {
		border-top: 1px solid #fff;
		display: block;
	}

	.header02 .header_info_first {
		background: #99958d;
	}

	.header02 .header_info_second {
		background: #b3b0aa;
	}

	.header02 .header_info_big {
		background: #3990ad;
	}
	.header02 .info_forth {
		background: #207c9a
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header03
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

	.header03 .header_main {
		width: 216px;
		padding: 0;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	mod_sidebg
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

	.mod_side_bg:before {
		/*background-image: url(../images/side_bg01.png);*/
		background-position: right -390px center;
		background-size: cover;
	}

	.side_bg_box {
		width: 68%;
	    padding: 40px;
	    background: rgba(255,255,255, 0.7);
	}

	#fixed_side .contact {
		background: #ffffff;
		margin-top: 10px;
	}

	#fixed_side .tel {
		background: #ffffff;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	キャッチ
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#under .catch {
	    font-size: 2.3rem;
	    color: #004bb4;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	img_bg_greeting
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.img_bg_block.img_bg_greeting .img_bg_box {
		width: 60%;
	}

	/*その他の追加変更 ここから*/
    .bnr_col04, .bnr_col03, .bnr_col02 {
    	padding: 1px 0;
    }
}



/*2000px 以上*/
@media screen and (min-width: 2000px)  {
	.img_bg_block.img_bg_greeting:before {
		background-size: cover;
	}
	/*その他の追加変更 ここから*/
}

/*特殊*/
@media screen and (max-width: 1300px) and (min-width: 1041px) {
	.header03 {
		padding: 0 15px;
	}
	.header03 .nav_li > a {
		font-size: 1.4rem;
	}
	.header03 .header_main {
		width: 140px;
		padding: 10px 0;
	}

	.header03 .header_info_other {
	    right: 15px;
	    width: 150px;
	}

	.header03 nav {
	    margin-right: 155px;
	}

	.header03 .nav_li > a {
	    padding: 15px 10px;
	}

	.header03 .nav_li:first-of-type > a {
	    padding: 15px 10px 15px 0;
	}

	.header03 .nav_li:not(:last-of-type) > a:before {
	    top: 19px;
	}

	.header03 .has_child:before,
	.header03 .has_child:after {
		bottom: 8px;
	}

	.header03 .sub_menu_block {
	    width: 160px;
	    margin-left: -80px;
	}

	/*その他の追加変更 ここから*/
}

@media screen and (max-width: 1250px) and (min-width: 1041px) {
	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header02 {
		position: relative;
		z-index: 1000;
	}
	.header02 .header_main h1 {
		width: 320px;
		margin-top: 11px;
		margin-left: 10px;
	}
	.header02 .nav_li > a {
		padding: 0 10px;
		font-size: 1.4rem;
		height: 70px;
		line-height: 1.5;
	}

.header02 .nav_li > a>span {
	padding-bottom: 5px;
}

.list_parent>.has_child>a:before {
	bottom: 6px;
}

ul.list_parent>.nav_li:first-child a {
	padding-top: 23px;
}

ul.list_parent>.nav_li:first-child a:before {
	top: 15px;
}

	.header02 .header_main_home {
		width: 70px;
	}
	.header02 .header_info_big {
		width: 105px;
	}

	.header02 .header_info_other {
		width: 176px;
		overflow: hidden;
		height: 70px;
	}

	.header02 .nav_li {
	    max-height: 70px;
	}
	.header02 .header_info_other_mini {
	    margin-right: 106px;
	}

	.header02 .sub_menu_block {
		padding: 0 15px;
	}

	/*その他の追加変更 ここから*/

}

/*tbsp*/

@media screen and (max-width: 1040px) {
	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header03
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header03 {
		height: 50px;
	}
	.header03 .header_main h1 {
		width: 170px;
		margin-top: 8px;
		margin-left: 10px;
	}

	.header03 .header03_nav_sp .list_parent {
	    border-top: 1px solid #6fcdec;
	}

	.header03 .header03_nav_sp .nav_li {
		background: #3990ad;
		border-bottom: 1px solid #6fcdec;
	}

	.header03 .header03_nav_sp .has_child > a:before {
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}

	.header03 .header03_nav_sp .nav_li > a {
		color: #fff;
	}

	#under .catch {
		margin: 5rem 0 5rem;
		font-size: 2.5rem;
	}

	/*その他の追加変更 ここから*/
	.header02 .header02_nav_sp .nav_li > a>span {
	display: none;
}


}


/*tb*/
@media screen and (min-width: 768px) and (max-width: 1040px) {
	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header01
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header01 h1 {
		width: 190px;
		margin-right: 0;
		margin-left: 10px;
	}

	.header01 .h_bnr {
		width: 145px;
		margin-right: 11px;
	}

	.header01 .h_info {
		width: 470px;
	}
	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header02 .header_main_home {
		width: 70px;
	}
	.header02 .header_info_big {
		width: 105px;
	}

	.header02 .header_info_other {
		width: 176px;
		overflow: hidden;
		height: 70px;
	}
	.header02 .header_info_other_mini {
	    margin-right: 106px;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.img_bg_block.img_bg_greeting:before {
		background-size: 200% auto;
	}

	/*その他の追加変更 ここから*/
.top_newsbox .btn01 {
	min-width: 150px;
}
.top_menu_panel>li .txt {
	opacity: 1;
	padding: 0 0 0 120px;
	font-size: 1.6rem;
}

.top_menu_panel>li>a:before,.top_menu_panel>li>a:after {
	width: 100px;
	height: 100px;
}

.top_menu_panel>li {
	width: 48%;
	height: inherit;
	min-height: 100px;
	margin-top: 10px;
}

.top_menu_panel>li>a {
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	background: no-repeat;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.top_menu_panel>li>a:before {
	-webkit-box-shadow: 0 1px 10px 1px rgba(241,30,139,0.25);
	-moz-box-shadow: 0 1px 10px 1px rgba(241,30,139,0.25);
	box-shadow: 0 1px 10px 1px rgba(241,30,139,0.25);
	background-color: #fff;
}


.top_reason_panel {
	margin-left: 20px;
	margin-right: 20px;
}

.top_reason_panel .tl {
	padding: 15px 15px 10px;
	font-size: 2.2rem;
}

.top_reason_panel .txt {
	padding: 0 15px 10px 15px;
}
.title_set05 {
	margin-top: 7px;
}
}
@media screen and (min-width: 768px) and (max-width: 1180px) {
#fixed_side {
	width: 50px;
}

main .full,
.footer_reverse_sp {
	padding-right: 50px;
}

.fullfull {
	padding-right: 0 !important;
}

.footer_reverse_sp {
	padding-right: 50px;
}
}
@media screen and (min-width: 1041px) and (max-width: 1180px) {

main .full:not(.fullfull) .inner {
	padding-left: 15px;
	padding-right: 15px;
	box-sizing: border-box;
	width: 100%;
	max-width: 1030px;
}

}
/*sp*/
@media screen and (max-width: 767px) {

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header01
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header01 {
		height: 49px;
	}
	.header01.sp_header_big {
		height: 60px;
	}

	.header01 h1 {
		width: 120px;
		padding-top: 4px;
	}

	.logo_center h1 {
		width: 180px;
		margin-left: auto;
		margin-right: auto;
		padding-top: 8px;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header02 {
		height: 49px;
	}
	.header02 .header_main h1 {
		width: 220px;
		margin-top: 8px;
		margin-left: 10px;
	}

	.header02 .header02_nav_sp .nav_li {
		background: #f11e8b;
		border-bottom: 1px solid #ffffff;
	}

	.header02 .header02_nav_sp .has_child > a:before {
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}

	.header02 .header02_nav_sp .nav_li > a {
		color: #fff;
	}

	.header02 .header02_nav_sp .has_child > .sub_menu_block {
		background: #f988a2;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	fixed_footer
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.fixed_footer .contact {
		background: #f17cb7;
	}

	.fixed_footer .tel {
		background: #f31e8c;
	}

	.mod_bnr_box img {
	    width: 300px;
	}

	.news_box a {
		display: inline;
	}

	/*その他の追加変更 ここから*/


.title_set05 {
	margin-top: 3vw;
}

.f_logo {
	margin-bottom: 15px;
}

.f_txt {
	margin-bottom: 15px;
	text-align: center;
}
main#under:before,.mv_max:before {
	height: 6vw;
	left: -12vw;
	-webkit-transform: inherit;
	transform: inherit;
	background-position: left top;
	background-size: 350vw;
	width: 200vw;
}

.mv_max:after {
	background-image: url(../images/mv_txt_sp.png);
}
.top_newsbox {
	width: 100%;
}

.top_newsbox .btn01 {min-width: inherit;}

.top_newsbox .ttl_top_lv02 {
	text-align: center;
}

.top_newsblock .tl_block {
	flex-direction: column;
}

.top_newsbox .btn_box {
	width: 100%;
	text-align: center;
	margin-top: 20px;
}

.top_newsarea {
	margin-top: 30px;
	margin-bottom: 30px;
}

.top_newsbox+.top_newsbox {
	margin-top: 30px;
}

.top_menu_panel>li .txt {
	opacity: 1;
	padding: 0 0 0 120px;
	font-size: 1.6rem;
}

.top_menu_panel>li>a:before,.top_menu_panel>li>a:after {
	width: 100px;
	height: 100px;
}

.top_menu_panel>li {
	width: 100%;
	height: inherit;
	min-height: 100px;
	margin-top: 10px;
}

.top_menu_panel>li>a {
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	background: no-repeat;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.top_menu_panel>li>a:before {
	-webkit-box-shadow: 0 1px 10px 1px rgba(241,30,139,0.25);
	-moz-box-shadow: 0 1px 10px 1px rgba(241,30,139,0.25);
	box-shadow: 0 1px 10px 1px rgba(241,30,139,0.25);
	background-color: #fff;
}

.top_menu_panel {
	margin-top: -10px;
}

.top_menu {
	padding-top: 30px;
	padding-bottom: 30px;
}

.top_reason_panel {
	margin-left: 15px;
	margin-right: 15px;
	flex-direction: column;
}

.top_reason_panel>li {
	width: 100%;
}

.top_reason_panel>li:nth-child(3n-1) .img {
	order: 1;
}

.top_reason_panel>li:nth-child(3n-1) .txt_block {
	order: 2;
}

.top_reason_panel .tl {
	padding: 10px 15px 5px 15px;
}

.top_reason_panel .txt {
	padding: 0 15px 9px 15px;
}

.top_reason .btn {
	margin-top: 20px;
}

.top_greeting_inner:before {
	background-size: 40px auto,40px auto,40px auto,40px auto;
}

.top_greeting_inner:after {
	background-size: 350px auto;
	width: 90%;
	width: -webkit-calc(100% - 100px);
	width: calc(100% - 100px);
	top: -3px;
}

.top_greeting {
	padding-top: 30px;
	padding-bottom: 30px;
}

.top_greeting_inner02 {
	padding: 20px;
}

.top_greeting_inner .btn_block {
	flex-direction: column;
}

.top_greeting_inner .btn_block li {
	width: 100%;
}

.top_greeting_inner .btn_block li+li {
	margin-left: 0;
	margin-top: 10px;
}

.top_greeting_inner02:after {
	width: 90%;
	width: -webkit-calc(100% - 100px);
	width: calc(100% - 100px);
}

.top_greeting_inner02:before {
	height: 80%;
	height: -webkit-calc(100% - 126px);
	height: calc(100% - 126px);
	bottom: 63px;
}

.top_greeting {
	background-position: -40px center;
}

.contact_area>* {
	padding: 30px 15px;
}

.contact_area .tl {
	font-size: 3.4rem;
	margin-bottom: 15px;
}

.contact_area .btn_block {
	margin-top: 20px;
}
.catch_copy {
	line-height: 1.4;
}
.full.f_bnr {
	margin-top: 30px;
	margin-bottom: 30px;
}
.contact_area .btn_block img {
	width: 100%;
}

.ai_bnr {
	width: 133px;
	bottom: 20.4vw;
	right: 4px;
}
#top_button {
	display: none;
}
}