@charset "utf-8";
/********** 3 ヘッダ **********/
/* ヘッダ */
.header_hide #header,
#container #header {
	position: relative;
	top: auto;
	transition: unset;
}
.header_hide #header2,
#container #header2 {
	display: block;
}
.header_hide #top_search {
	display: none;
	transform: none;
}
.header_hide #top_search > #top_search_box,
#container #top_search > #top_search_box {
	/* display: -webkit-box; */
	/* display: flex; */
	/* flex-wrap: wrap; */
	/* -webkit-box-pack: start; */
	/* justify-content: flex-start; */
	/* padding: 0px 20px; */
	/* height: auto; */
	height: auto;
}

#header {
	font-size: 1.3rem;
	position: relative;
	top: auto;
}
#he_left > #logo > h1 > img {
	border-right: none;
}
#he_left, #he_left > #logo > a > img {
	border-right: none;
}
#he_left > #logo > a > img, #he_left > #logo > h1 > img {
	width: 135px;
}
#sp_header {
	position: fixed;
	z-index: 9999;
	bottom: 0px;
	width: 100%;
	height: 70px;
}

#sp_header > #spm_wrap {
	background: #cfde8e;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	margin: 0px;
	padding: 2px 0px 0px;
}

#spm_wrap > div {
	background: #fff;
	width: calc(100%/3 - 0px);
	height: 70px;
	display: inline-block;
	background-position: center center;
	background-repeat: no-repeat;
	border: none;
	outline: none;
	position: relative;
	padding: 0px
}

#spm_wrap div#spm_function {
	background-image: url(/img/common/spm_question_icon.png);
	background-size: 70px;
	background-color: #fff79b;
	background-position: center bottom;;
}

#spm_wrap div#spm_search {
	background-image: url(/img/common/spm_search_icon.png);
	background-size: 70px;
}

#spm_wrap div#spm_menu, #spm_wrap div#spm_top_menu {
	background-image: url(/img/common/spm_menu_icon.png);
	background-size: 45px;
	border-left: 2px solid #cfde8e;
	border-right: 2px solid #cfde8e;
}
#spm_wrap div#spm_menu.menu_open, #spm_wrap div#spm_top_menu.menu_open,
#spm_wrap div#spm_search.search_open {
	background-image: url(/img/common/sp_close_icon.png);
	background-color: #b8c57e;
	background-size: 35px;
}
.top_index #header2 {
	padding-bottom: 20px;
}
#header2 {
	width: auto;
	margin: 0px;
}

#he_left {
	position: static;
	width: 180px;
	margin: 0px;
	padding: 10px;
}
.top_index #he_left {
	padding: 0px 0px 0px 20px;
}
.top_index #top_search_detail_1 {
	display: block !important;
}
#he_right, #search_box_div, #search_close_btn, ul#header_icon_link li:last-child {
	display: none;
	padding: 0;
}

.top_index .header_hide #top_search > #top_search_box > ul#gnav {
	width: 100%;
}
.top_index #search_box_div {
	display: block;
	border-left: none;
	padding-left: 0px;
	margin-bottom: 30px;
	width: auto;
}
#top_search_title {
	display: none;
}
.top_index #top_search_keyword {
	margin-bottom: 0px;
}
.top_index #top_search_keyword > label > span,
.top_index #page_id_box > label > span {
	width: auto;
	height: auto;
}
#top_search_detail_2 {
	display: block !important;
	padding-top: 10px;
}

ul#header_navi > li > dl {
	padding: 5px 0px;
}
ul#header_navi > li:nth-child(4), ul#header_navi > li#moji_size, ul#header_navi > li#haikei_color {
	margin-left: 0px;
}
ul#header_navi {
	display: block;
	text-align: left;
	margin: 20px 0px 0px;
}
ul#header_navi li.h_guide, ul#header_navi li.h_lang {
	display: inline-block;
	margin: 0px 14px 12px 0px;
}
ul#header_navi li.h_lang {
	margin-right: 0px;
}
ul#header_navi li.h_main {
	display: none;
}
ul#header_navi > li {
	display: block;
}
ul#header_navi > li > a {
	padding: 3px 0px 3px 20px;
}
ul#header_navi > li.h_guide > a,
ul#header_navi > li.h_lang > a,
ul#header_navi > li.h_speaker > a {
	background-size: 15px;
	padding: 3px 0px 3px 23px;
}
ul#header_navi > li#moji_size > dl > dt {
	background-size: 18px;
}
#open_search_box {
	/* position: relative; */
	/* height: calc(100dvh - 80px); */
	/* overscroll-behavior: auto; */
}
ul#header_navi > li.h_speaker > a {
	display: inline-block;
}
ul#header_navi > li#moji_size > dl > dt {
	background-size: 18px;
	padding: 0px 5px 0px 23px;
}
ul#header_navi > li#haikei_color > dl > dt {
	background-size: 16px;
	padding: 0px 0px 0px 23px;
}
.top_index ul#gnav > li > a:hover, .top_index ul#gnav > li > a:focus,
#top_banner_pr_list > li img:hover, #top_banner_pr_list > li img:focus {
	border: none;
	font-weight: normal;
}
#open_search_box > .content3_wrap {
	background: none;
	margin: 0px;
	width: auto;
	padding: 0px 0px 10px;
}
#search_div {
	display: block;
	margin: 10px 0px;
}
#top_search_keyword, #top_search_page_id {
	width: auto;
	margin: 0px 0px 0px;
}
/* 検索 */
.top_index #cse-search-box, .top_index #open_page_id_div {
	width: 100%;
}
.top_index #cse-search-box, .top_index #open_page_id_div {
	border-radius: 6px;
}
.top_index #tmp_query, .top_index #open_page_id {
	border-radius: 6px 0px 0px 6px;
}
.bl_search_label, .top_index #page_id_box label, .top_index #top_search_keyword > label {
	font-size: 1.4rem;
	margin-bottom: 5px;
	display: block;
}
#page_id_box > label {
	font-size: 1.4rem;
	margin: 10px 0px 5px;
}
#tmp_query, #submit, #open_page_id, #open_page_id_div, #open_page_id_submit,
.top_index #open_page_id, .top_index #open_page_id_submit,
.top_index #tmp_query, .top_index #submit {
	height: 45px;
}
#open_page_id_div {
	width: auto;
 }
#cse-search-box {
	display: block;
	width: auto;
	margin-right: 0px;
}
#cse_filetype {
	display: block;
	margin: 10px 0px 0px;
}
#cse_filetype fieldset {
	padding: 0px;
}
#cse_filetype fieldset span {
	font-size: 1.2rem;
}
/*lifestage*/
#he_right.search_open .content3_ttl, #he_right.search_open .life_wrap,
#he_right.search_open .top_search_menu_list {
	display: none;
}
.content3_ttl > p {
	font-size: 2.6rem;
	background-size: 26px;
	padding: 10px 0 10px 45px;
}

#main .life_wrap{
	margin-top: 0px;
}
.life_event,.service {
	border-right: 0;
	border-bottom: 1px solid #d1d1d1;
	margin: 0 auto 20px;
	padding: 0 0 20px 0;
	width: auto;
}
.service_list > ul, .life_event_list > ul {
	/* max-width: 300px; */
	margin: 0px auto;
	justify-content: center;
}
.service {
	width: 100%;
	margin: 0 auto;
	padding: 0px;
}
.service_ttl > h2, .life_event_ttl > h2 {
	font-size: 2rem;
	padding-bottom: 10px;
}
.service_list > ul > li > a, .life_event_list > ul > li > a {
	font-size: 1.4rem;
}
.service_list > ul > li, .life_event_list > ul > li {
	width: 135px;
}
/* グローバルナビ */
.header_hide #top_search, #top_search {
	display: none;
}

.header_hide.spm_menu_open #top_search.menu_open,
.header_hide .spm_menu_open .top_header_wrap.menu_open,
.top_header_wrap.menu_open,
#container.spm_menu_open #top_search.menu_open,
.header_hide #top_search.menu_open,
#top_search.menu_open {
	display: block;
	position: fixed;
	z-index: 99;
	background: #f4fed1;
	width: 100%;
	height: 100vh;
	overflow-y: auto;
	top: 0px;
	padding: 50px 0px 150px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-ms-scroll-chaining: none;
	overscroll-behavior: none;
}
.header_hide #top_search.menu_open {
	transform: initial;
}

.header_hide #top_search > #top_search_box > ul#gnav,
#container #top_search > #top_search_box > ul#gnav {
}
.top_header_wrap.menu_open {
	padding: 50px 0px 150px;
}
.top_header_wrap > #header {
	background: none;
}
.top_header_wrap.menu_open > #header > #header2 ,
.top_header_wrap.menu_open > #header > #top_photo_wrap {
	display: none;
}
.top_header_wrap.menu_open > #header > #top_search {
	display: block;
	transform: inherit;
}

.top_header_wrap.menu_open > #header > #top_banner_pr_wrap {
	display: none;
}

.top_header_wrap.menu_open #top_search_box {
	padding: 0px 20px;
}
ul#top_banner_pr_list {
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}
#top_banner_pr_list > li {
	width: calc(50% - 5px);
	margin: 0px 10px 10px 0px;
}
#top_banner_pr_list > li:nth-child(2n) {
	margin-right: 0px;
}
.top_header_wrap > #header {
	margin-bottom: 0px;
	padding-bottom: 0px;
}
.top_index ul#gnav > li,
.header_hide #top_search > #top_search_box > ul#gnav > li#gnav1, 
.header_hide #top_search > #top_search_box > ul#gnav > li#gnav3 {
	padding-right: 0px;
}
.header_hide #top_search > #top_search_box > ul#gnav > li#gnav2,.header_hide > .top_index #top_search > #top_search_box > ul#gnav > li#gnav2 {
	padding-right: 0;
}
ul#gnav > li, .top_index ul#gnav > li,.header_hide > .top_index ul#gnav > li {
	display: block;
	width: calc(50% - 5px);
}
ul#gnav > li > a:hover, ul#gnav > li > a:focus,
ul#gnav > li:last-child > a:hover, ul#gnav > li:last-child > a:focus {
	border: none;
}
.top_index .header_hide ul#gnav > li a, .header_hide ul#gnav > li a,
#container ul#gnav > li a {
	font-size: 1.6rem;
	padding: 20px 0px 10px;
	background: #fff;
	border-radius: 15px;
	border-left: none;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 8rem;
	border: none;
	display: grid;
	place-items: center center;
}
.top_index ul#gnav > li#gnav3 > a,.header_hide > .top_index ul#gnav > li#gnav3 > a {
	padding: 20px 0px 10px;
}
ul#gnav > li:last-child a {
	border-right: none;
}
.top_index ul#gnav > li#gnav1 a span img, ul#gnav > li#gnav1 a span img, .header_hide ul#gnav > li#gnav1 a span img,.header_hide ul#gnav > li#gnav1 a span img, .header_hide > .top_index ul#gnav > li#gnav1 a span img {
	width: 35px;
	height: 35px;
}
.top_index ul#gnav > li#gnav2 a span img, ul#gnav > li#gnav2 a span img, .header_hide ul#gnav > li#gnav2 a span img,.header_hide ul#gnav > li#gnav2 > a > span > img, .header_hide > .top_index ul#gnav > li#gnav2 > a > span > img {
	width: 43px;
	height: 35px;
}
.top_index ul#gnav > li#gnav3 a span img, ul#gnav > li#gnav3 a span img, .header_hide ul#gnav > li#gnav3 a span img,.header_hide ul#gnav > li#gnav3 > a > span > img, .header_hide > .top_index ul#gnav > li#gnav3 > a > span > img {
	width: 56px;
	height: 30px;
}
.top_index ul#gnav > li#gnav4 a span img, ul#gnav > li#gnav4 a span img, .header_hide ul#gnav > li#gnav4 a span img,.header_hide ul#gnav > li#gnav4 > a > span > img, .header_hide > .top_index ul#gnav > li#gnav4 > a > span > img {
	width: 29px;
	height: 35px;
}
/* .header_hide ul#gnav li a span:nth-child(n), */
#container ul#gnav li a span:nth-child(1){
	align-self: flex-start;
}
#container ul#gnav li a span:nth-last-child(1) {
	padding-right: 0px;
	padding-bottom: 10px;
	align-self: flex-end;
}
.header_hide ul#gnav > li a span,
#container ul#gnav > li a span {
	text-align: center;
	line-height: 1;
	padding: 0;
}
.top_index ul#gnav > li#gnav1 a span img,
.top_index ul#gnav > li#gnav2 a span img,
.top_index ul#gnav > li#gnav3 a span img,
.top_index ul#gnav > li#gnav4 a span img {
	padding: 0;
}
.top_index .header_hide ul#gnav > li a span:nth-child(n) {
	padding-right: 0;
}
.header_hide #top_search > #top_search_box > #header_icon_link, 
#container #top_search > #top_search_box > #header_icon_link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: flex-start;
	gap: 10px;
	margin: 0 auto;
	padding: 0;
	/* width: 100%; */
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	background: #fff;
	/* box-shadow: -20px 0px 0px 0px #fff, 20px 0px 0px 0px #fff; */
	/* -webkit-box-shadow: -20px 0px 0px 0px #fff, 20px 0px 0px 0px #fff; */
	/* margin-top: 10px; */
	padding: 20px 20px;
	width: 100%;
	box-sizing: border-box;
}
.header_hide ul#gnav > li a br,
#container ul#gnav > li a br {
	display: none;
}

ul#header_icon_link li {
	width: calc(50% - 5px);
	display: block;
	margin: 0px;
	padding: 0;
}
ul#header_icon_link li#icon_link3 {
	margin-bottom: 0px;
}
ul#header_icon_link li:nth-child(2n) {
	margin-right: 0;
}
ul#header_icon_link > li > a {
	padding: 10px 0px 15px 0px;
	border-radius: 10px;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	font-size: 1.5rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.header_hide ul#header_icon_link > li:first-child > a > span, 
.header_hide ul#header_icon_link > li:last-child > a > span {
	margin-right: 0;
}
.header_hide ul#header_icon_link > li > a > span,
ul#header_icon_link > li > a > span {
	display: block;
	width: 100%;
	text-align: center;
	margin: 10px 0 0px 0;
}
.header_hide ul#header_icon_link > li#icon_link1 > a > span, ul#header_icon_link > li#icon_link1 > a > span,.header_hide > .top_index ul#header_icon_link > li#icon_link1 > a > span {
	background: url(/img/common/link_icon1.png) no-repeat center top;
	background-size: 80px;
	padding: 95px 0px 0px;
}
.header_hide ul#header_icon_link > li#icon_link2 > a > span, ul#header_icon_link > li#icon_link2 > a > span,.header_hide > .top_index ul#header_icon_link > li#icon_link2 > a > span {
	background: url(/img/common/link_icon2.png) no-repeat center top;
	background-size: 80px;
	padding: 95px 0px 0px;
}
.header_hide ul#header_icon_link > li#icon_link3 > a > span,
ul#header_icon_link > li#icon_link3 > a > span {
	background: url(/img/common/link_icon3.png) no-repeat center top;
	background-size: 80px;
	padding: 95px 0px 0px;
}
.top_index ul#header_icon_link > li:first-child > a,
.top_index ul#header_icon_link > li:nth-child(2) > a,
.top_index ul#header_icon_link > li:nth-child(3) > a,
ul#header_icon_link > li:first-child > a,
ul#header_icon_link > li:nth-child(2) > a,
ul#header_icon_link > li:nth-child(3) > a {
	padding: 5px 5px 10px 5px;
}
ul#header_icon_link > li:nth-child(2) > a > span:first-child {
	margin-right: 0px;
}

/********** 5 フッタ **********/

/* フッタ */
#footer_navi > ul {
	margin: 0px 20px;
}

#author_info {
	width: auto;
	display: block;
	padding: 25px 20px 300px;
}
#author_info::after {
	top: auto;
	bottom: 0;
	right: calc(50% - 210px);
	background-size: 530px;
	background-position: right 0 bottom -120px;
	width: 400px;
	height: 260px;
}
#author_info > div {
	width: auto;
	margin: 0px auto;
}
#author_info > #author_box {
	width: auto;
	margin: 0px;
}
#author_info > #logo_mark {
	width: auto;
	text-align: center;
}
#author_info > #contact_info{
	width: auto;
}
#contact_info_list > ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	gap: 10px;
}
#contact_info_list > ul > li{
	margin: 0px;
}
#footer_banner_img{
	width: 220px;
	margin: 0px auto;
}

#author_box {
	padding: 10px 0px;
}
#author_box .f_address {
	margin-top: 10px;
}
#footer #copyright_wrap {
	display: block;
	padding: 10px 0px 8rem;
}
#author_box .f_contact {
	word-wrap: break-word;
	word-break: break-all;
}
#copyright {
	text-align: right;
	padding: 20px 0px 100px;
	font-size: 1.2rem;
	margin: 0 20px;
}

/* 戻る・ページトップ */
#back_or_pagetop {
	width: auto;
	margin: 0px 10px;
}
#back_or_pagetop > div a {
	width: auto;
	padding: 10px 15px;
}

/* ページトップ（フローティング表示） */
#footer_link_pagetop {
	width: 60px;
	right: 10px;
}
#footer_link_pagetop.fixed {
	bottom: 10px;
}

/* おすすめ情報（回遊ボタン） */
#osusume_banner_ttl {
	width: 60px;
}
#osusume_banner_ttl a {
	font-size: 1.2rem;
	line-height: 1.5rem;
	padding: 15px 0px;
}

/*color common*/
.color_change #spm_wrap > div {
	background-color: #fff !important;
}
#spm_wrap div#spm_function {
	background-color: #fff79b !important;
}
.color_change #spm_wrap div#spm_search.search_open, .color_change #spm_wrap div#spm_menu.menu_open,
.color_change #spm_wrap div#spm_top_menu.menu_open {
	background-color: #b8c57e !important;
}
.color_change #spm_wrap div#spm_menu, 
.color_change #spm_wrap div#spm_top_menu {
	border-left: 2px solid #cfde8e !important;
	border-right: 2px solid #cfde8e !important;
}
.color_change ul#header_navi > li#moji_size > dl > dt,
.color_change ul#header_navi > li.h_speaker > a {
	background-size: 18px;
}

/*color blue*/
.color_blue #he_right.search_open, .color_blue .header_hide.spm_menu_open #top_search.menu_open,
.color_blue #container.spm_menu_open #top_search.menu_open,
.color_blue .header_hide #top_search.menu_open, .color_blue #top_search.menu_open,
.color_blue .top_header_wrap.menu_open, .color_blue #container #top_search.menu_open > #top_search_box {
	background-color: #0000ff !important;
}
.color_blue #sp_header > #spm_wrap, .color_blue .header_hide ul#gnav li a {
	background-color: #0000aa !important;
}
.color_blue #footer .main_copyright {
	border-top: 1px solid #0000aa;
}

.color_black #he_right.search_open, .color_black .header_hide.spm_menu_open #top_search.menu_open,
.color_black #container.spm_menu_open #top_search.menu_open,
.color_black .header_hide #top_search.menu_open,
.color_black #top_search.menu_open,
.color_black .header_hide #top_search.menu_open, .color_black #top_search.menu_open,
.color_black .top_header_wrap.menu_open,
.color_black #container #top_search.menu_open > #top_search_box {
	background-color: #000 !important;
}
.color_black.header_hide ul#gnav > li,
.color_black #sp_header > #spm_wrap, .color_black .header_hide ul#gnav li a {
	background-color: #333 !important;
}
.color_black.header_hide ul#gnav > li > a {
	background: #333333 !important;
}
.color_black #footer .main_copyright {
	border-top: 1px solid #333333;
}
.color_blue.header_hide ul#gnav > li > a {
	background: #0000aa !important;
}
.color_change.header_hide ul#header_icon_link > li,
.color_change.header_hide ul#gnav > li {
	background-color: transparent !important;
}
.color_change #header {
	border: 0;
}
.color_change ul#header_icon_link > li:first-child > a {
	background: #ffcec7 !important;
}
.color_change ul#header_icon_link > li:nth-child(2) > a {
	background: #aee2e8 !important;
}
.color_change ul#header_icon_link > li:nth-child(3) > a {
	background: #fff9cb !important;
}
.color_change ul#header_icon_link > li > a > span,
.color_change ul#header_icon_link > li > a > span:link,
.color_change ul#header_icon_link > li > a > span:visited {
	color: #333 !important;
}

@media screen and (orientation: landscape){
	#author_box .f_detail br{
		display: none;
	}
}