@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

/******************
全体[共通]
******************/

body {
	font-family:'Noto Sans Japanese', sans-serif;
	font-size:96%;
	color:#323232;
	line-height:1.7em;
	-webkit-text-size-adjust: 100%;
	word-wrap:break-word;
	overflow-wrap:break-word;
}

body,div,pre,p,blockquote,
form,fieldset,input,textarea,select,option,
dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
table,th,td,embed,object,img{
	margin: 0;
	padding: 0;
}

img{
	border:none;
	vertical-align:bottom;
	max-width:100%;
	height:auto;
}

ul li{
	list-style-type:none;	
}

a{
	color:#323232;
	text-decoration:none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

a:hover{
	color:#2b67c7;
}

a img{
    -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;
		outline:none;
}

a:hover img{
	opacity:0.7;
	-moz-opacity:0.7;
	-webkit-opacity:0.7;
}

table{
	border-collapse:collapse;
	border-color: #333333;
}

th{
	font-weight:500;
}

td{
	vertical-align:top;
}

a:link {
	text-decoration: none;
}

a:visited {
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

a:active {
	text-decoration: none;
}


/******************
汎用[共通]
******************/

.float_left{
	float:left;
}

.float_right{
	float:right;
}

.clear{
	clear:both;
}

.cenclear{
	clear:both;
	text-align:center;
	padding-top:30px;
}

.txt_center{
	text-align:center;
}

.txt_right {
	text-align: right;
}
.txt75 {
	font-size: 75%;
}
.grey_box {
	border: 1px solid #cccccc;
}

img.aligncenter{
	display: block;
	margin-left: auto;
	margin-right: auto;
}

img.alignright{
	margin-left: auto;
	display:block;
}

img.alignleft{
	text-align: left;
}


/******************
全体BOX[共通]
******************/

#wrapper{
	width:100%;
	overflow:hidden;
}

/******************
テンプレート全体[共通]
******************/

.commonBox{
	overflow:hidden;
	padding:0 1% 40px;
	width:98%;
	clear: both;
}

.commonBox:after{
	content: "."; 
	display: block; 
	height: 0; 
	font-size:0;	
	clear: both; 
	visibility:hidden;
}

* html .commonBox {
	height: 1%;
}

/******************
全体[タブレット＋スマートフォン]
******************/

@media screen and (max-width: 768px) {

body{
	font-size:90%;
}

}


/*************
ヘッダー[共通]
*************/

#header {
	width: 100%;
	overflow:hidden;
}


/*************
ヘッダー[タブレット]
*************/


@media screen and (max-width: 1120px) {

}

/*************
ヘッダー[スマートフォン]
*************/

@media screen and (max-width: 768px) {
	
#header-left{
	padding-top:8px;
	padding-bottom:8px;
	width:180px;
}
	
#header #header_main{
	width:96%;
	padding:7px 0 9px;
}
	
#header #header_main .float_left{
	width:76%;
	float:none;
	max-width:260px;
}
	
#headerMainBox{
	width:100%;
	margin:0 auto;
}
	
#hMenuBtnWrap {
	padding-top:2px;
	position:fixed;
	z-index:5500;
	top:0px;
	right:5px;
	width:47px;
	height:47px;
	cursor:pointer;
	-webkit-transition:opacity .2s ease .3s, top 0s ease .3s;
	-moz-transition:opacity .2s ease .3s, top 0s ease .3s;
	-ms-transition:opacity .2s ease .3s, top 0s ease .3s;
	transition:opacity .2s ease .3s, top 0s ease .3s;
	
}

#hMenuBtnWrap .hMenuBtnBox {
	padding:6px 7px 6px 4px;
	-webkit-transition:all .3s ease;
	-moz-transition:all .3s ease;
	-ms-transition:all .3s ease;
	transition:all .3s ease;
}

.hMenuBtnBox:after,
.hMenuBtnBox:before,
.hMenuBtnBox div.hMenuBtnMiddle:before {
	content:'';
	display:block;
	width:15px;
	height:2px;
	margin:2px 0;
	background-color:#92959E;
	-webkit-transition:all .25s ease;
	-moz-transition:all .25s ease;
	-ms-transition:all .25s ease;
	transition:all .25s ease;
	outline:1px solid transparent;
}

#header .morph-menu-active{

}

#header .morph-menu-active .hMenuBtnBox:after,
#header .morph-menu-active .hMenuBtnBox:before,
#header .morph-menu-active .hMenuBtnBox div.hMenuBtnMiddle:before {
	background-color:#fff;
}

#headerMenuWrap {
	position:relative;
	top:70px;
	width:100%;
	margin:0;
	padding:5px 0 0 0;
	-webkit-transform:translate3d(0,0,0);
	-webkit-transition:all .2s ease;
	-moz-transition:all .2s ease;
	-ms-transition:all .2s ease;
	transition:all .2s ease;
	background-color:#f1f0f0;
}

#header .morph-menu-active{
	padding-top:4px;
}

.headerMenu{
	 width:100%;
	 height:100%;
}

#wrapper #header .headerMenu ul li{
	width:auto;
	text-align:left;
	overflow:hidden !important;
	float:none;
	height:auto;
	padding:0;
}

#wrapper #header .headerMenu ul li a{
	width:auto;
	font-size:104%;
	line-height:2em;
	font-weight:500;
	margin:0;
	padding:9px 0 9px 4%;
	display:block;
	text-decoration:none;
	text-indent:0;
	height:auto;
	color:#535353;
	border-top:1px solid #cccccc;
	background-image: none;
	text-align:left;
}
	
#wrapper #header .headerMenu ul li a:hover,
#wrapper #header .headerMenu ul li a:active{
	background-color:#eae9e9;
}

#wrapper #header .headerMenu ul li:last-child a{
	border-bottom:1px solid #cccccc;
}

#wrapper #header .headerMenu ul li ul li:last-child a{
	border-bottom:none;
}

.headerMenu ul li ul{
	display:none;
}

#wrapper #header .headerMenu ul li ul li a{
	padding-left:40px;
}

#wrapper #header .headerMenu p a{
	text-indent:0;
	padding:0;
}

.headerMenu ul li.border a {
	padding-bottom:19px;
	margin-bottom:8px;
}

.headerMenu a li {
	font-size:16px;
	width:40px;
	margin-left:-8px;
	text-align:center;
	display:inline-block;
}

.headerMenu ul li a {
	opacity:0;
	-webkit-transform:translateX(30px);
	-moz-transform:translateX(30px);
	transform:translateX(30px);
	position:relative;
}
	
#header .headerMenu li a span{
	border-right:none;
	border-left:none;
	padding:0;
	display:inline-block;
}

#header .headerMenu li a span.subTitle{
	font-size:84%;
	padding-left:5px;
	color:#2D6199;
	font-weight:400;
}

.headerMenu li#top_bt05 a span{
	background: none;
}

.headerMenu li#top_bt05 a span.subTitle{
	font-size:84%;
	padding:0 0 0 5px;
	color:#2D6199;
}

.headerMenu li#top_bt05 a:hover .mainTitle{
	color:#004097;
}

.headerMenu ul li span.subTitle::after {
    display: none;
}

.headerMenu li a:hover .subTitle{
	color:#ffffff;
}

#header .headerMenu li a:hover span.subTitle{
	color:#323232;
}

.headerMenu li a span.subTitle span{
	font-size:88%;
	padding:0 1px 0 2px;
}
	
.headerMenu li a span::before,
.headerMenu li a span::after{
	display:none;
}

#header .headerMenuWrap-active .headerMenu ul li a {
	opacity:1;
	-webkit-transform:translateX(0);
	-moz-transform:translateX(0);
	transform:translateX(0);
}

.headerMenu ul li a.spToggle::before{
	content:'';
	right:22px;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	-o-transform: rotate(135deg);
	transform: rotate(135deg);
	background-color:transparent;
	top: 0px;
	bottom: 7px;
	width:12px;
	height:12px;
	border-top:3px solid #555555;
	border-right:3px solid #555555;
	left:auto;
	position:absolute;
	margin: auto;
	vertical-align:middle;
}

.headerMenu ul li a.open::before{
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	-ms-transform: rotate(315deg);
	-o-transform: rotate(315deg);
	transform: rotate(315deg);
	top: 7px;
	bottom: 0px;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(1) a {
	-webkit-transition:opacity .3s ease .2s, -webkit-transform .5s ease .2s;
	-moz-transition:opacity .3s ease .2s, -moz-transform .5s ease .2s;
	transition:opacity .3s ease .2s, transform .5s ease .2s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(2) a {
	-webkit-transition:opacity .3s ease .25s, -webkit-transform .5s ease .25s;
	-moz-transition:opacity .3s ease .25s, -moz-transform .5s ease .25s;
	transition:opacity .3s ease .25s, transform .5s ease .25s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(3) a {
	-webkit-transition:opacity .3s ease .3s, -webkit-transform .5s ease .3s;
	-moz-transition:opacity .3s ease .3s, -moz-transform .5s ease .3s;
	transition:opacity .3s ease .3s, transform .5s ease .3s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(4) a {
	-webkit-transition:opacity .3s ease .35s, -webkit-transform .5s ease .35s;
	-moz-transition:opacity .3s ease .35s, -moz-transform .5s ease .35s;
	transition:opacity .3s ease .35s, transform .5s ease .35s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(5) a {
	-webkit-transition:opacity .3s ease .4s, -webkit-transform .5s ease .4s;
	-moz-transition:opacity .3s ease .4s, -moz-transform .5s ease .4s;
	transition:opacity .3s ease .4s, transform .5s ease .4s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(6) a {
	-webkit-transition:opacity .3s ease .45s, -webkit-transform .5s ease .45s;
	-moz-transition:opacity .3s ease .45s, -moz-transform .5s ease .45s;
	transition:opacity .3s ease .45s, transform .5s ease .45s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(7) a {
	-webkit-transition:opacity .3s ease .5s, -webkit-transform .5s ease .5s;
	-moz-transition:opacity .3s ease .5s, -moz-transform .5s ease .5s;
	transition:opacity .3s ease .5s, transform .5s ease .5s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(8) a {
	-webkit-transition:opacity .3s ease .55s, -webkit-transform .5s ease .55s;
	-moz-transition:opacity .3s ease .55s, -moz-transform .5s ease .55s;
	transition:opacity .3s ease .55s, transform .5s ease .55s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(9) a {
	-webkit-transition:opacity .3s ease .6s, -webkit-transform .5s ease .6s;
	-moz-transition:opacity .3s ease .6s, -moz-transform .5s ease .6s;
	transition:opacity .3s ease .6s, transform .5s ease .6s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(10) a {
	-webkit-transition:opacity .3s ease .65s, -webkit-transform .5s ease .65s;
	-moz-transition:opacity .3s ease .65s, -moz-transform .5s ease .65s;
	transition:opacity .3s ease .65s, transform .5s ease .65s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(11) a {
	-webkit-transition:opacity .3s ease .7s, -webkit-transform .5s ease .7s;
	-moz-transition:opacity .3s ease .7s, -moz-transform .5s ease .7s;
	transition:opacity .3s ease .7s, transform .5s ease .7s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(12) a {
	-webkit-transition:opacity .3s ease .75s, -webkit-transform .5s ease .75s;
	-moz-transition:opacity .3s ease .75s, -moz-transform .5s ease .75s;
	transition:opacity .3s ease .75s, transform .5s ease .75s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(13) a {
	-webkit-transition:opacity .3s ease .8s, -webkit-transform .5s ease .8s;
	-moz-transition:opacity .3s ease .8s, -moz-transform .5s ease .8s;
	transition:opacity .3s ease .8s, transform .5s ease .8s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(14) a {
	-webkit-transition:opacity .3s ease .85s, -webkit-transform .5s ease .85s;
	-moz-transition:opacity .3s ease .85s, -moz-transform .5s ease .85s;
	transition:opacity .3s ease .85s, transform .5s ease .85s;
}

#header .headerMenuWrap-active .headerMenu ul li:nth-child(15) a {
	-webkit-transition:opacity .3s ease .9s, -webkit-transform .5s ease .9s;
	-moz-transition:opacity .3s ease .9s, -moz-transform .5s ease .9s;
	transition:opacity .3s ease .9s, transform .5s ease .9s;
}

.headerMenu .menu {
	list-style:none;
	margin:0;
	padding:0;
}

.headerMenu .menu li {
	position:relative;
	margin:0;
	padding:0;
	border:none;
	z-index:auto;
}

.headerMenu .menu li span {
	display:inline-block;
	z-index:999;
	cursor:pointer;
    padding-left: 11px;
    color: #575757;
	font-size:11px;
}

.headerMenu .menu li a:hover span {
}

.headerMenu .menu ul {
	list-style:none;
	margin:8px 0 23px 0;
	padding:0;
	display:none;
}

/* MAIN WRAPPER
**************************************************/
/* main wrapper */
#headerMenuMainWrap {
	position:fixed;
	z-index:3500;
	top:0;
	right:0;
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	color:#767676;
	overflow:hidden !important;
	-webkit-transform: translate3d(100%, 0, 0);
	-moz-transform: translate3d(100%, 0, 0);
	-ms-transform: translate3d(100%, 0, 0);
	transform: translate3d(100%, 0, 0);
	-webkit-transition:all .4s cubic-bezier(.37,.15,.32,.94);
	-moz-transition:all .4s cubic-bezier(.37,.15,.32,.94);
	-ms-transition:all .4s cubic-bezier(.37,.15,.32,.94);
	transition:all .4s cubic-bezier(.37,.15,.32,.94);
}

#header .headerMenuMainWrapSp{
	transition-duration:0.5s;
	-webkit-transition-duration:0.5s;
	-moz-transition-duration:0.5s; 
	-o-transition-duration:0.5s;
	-ms-transition-duration:0.5s;
}

#header .headerMenuMainWrap-active {
	-webkit-transform:translateX(0);
	-moz-transform:translateX(0);
	-ms-transform:translateX(0);
	transform:translateX(0);
}

/* main inner wrapper */
.headerMenuMainBox {
	position:relative;
	width:100%;
	height:100%;
	overflow-y:scroll !important;
	overflow-x:hidden;
	/* smooth scroll on iOS */
	-webkit-transition:all .4s cubic-bezier(.37,.15,.32,.94);
	-moz-transition:all .4s cubic-bezier(.37,.15,.32,.94);
	-ms-transition:all .4s cubic-bezier(.37,.15,.32,.94);
	transition:all .4s cubic-bezier(.37,.15,.32,.94);
	transition-duration:0.5s;
}

/* content inner */
.headerMenuMain {
	/* 100.1% to get around mobile Safari's schrinking address bar conflict */
	height:100.1%;
}

/* give images/videos/embeds max width */
.headerMenuMain img,
.headerMenuMain iframe,
.headerMenuMain object,
.headerMenuMain embed {
	max-width:100%;
	height:auto;
}

/* sidebar background overlay */
#headerMenuBgOverlay {
	position:fixed;
	z-index:2500;
	top:-1000%;
	left:0;
	right:0;
	width:100%;
	/* 110% height to avoid iOS browser scroll mishap */
	height:110%;
	background-color:#000;
	opacity:0;
	display:block;
	-webkit-transition:top 0s ease .35s, opacity .35s ease;
	-moz-transition:top 0s ease .35s, opacity .35s ease;
	-ms-transition:top 0s ease .35s, opacity .35s ease;
	transition:top 0s ease .35s, opacity .35s ease;
}

#header .headerMenuBgOverlay-active {
	top:0;
	opacity:.3;
	-webkit-transition:top 0s ease 0s, opacity .35s ease;
	-moz-transition:top 0s ease 0s, opacity .35s ease;
	-ms-transition:top 0s ease 0s, opacity .35s ease;
	transition:top 0s ease 0s, opacity .35s ease;
}


/* HEADING CONTENT + OVERLAY + IMAGE
**************************************************/
/* joint styles */
.morph-heading-wrapper,
.morph-heading-overlay,
.morph-heading-image {
	position:absolute;
	width:100%;
	height:200px;
	margin:0;
	padding:0;
}

/* heading wrapper */
.morph-heading-wrapper {
	z-index:5000;
	display:table;
}

.morph-heading-inner {
	display:table-cell;
	vertical-align:bottom;
	padding:0 60px 18px 18px;
}

/* heading text */
.morph-heading-text {
	width:100%;
	color:#fff;
	display:block;
	margin:0 0 8px 0;
	
	font-family:'Roboto';
	font-weight:500;
	font-size:15px;
	line-height:15px;
	color:#fff;
}

/* subheading text */
.morph-subheading-text {
	width:100%;
	color:#fff;
	display:block;
	margin:-6px 0 0 0;
	
	font-family:'Roboto';
	font-weight:500;
	font-size:12px;
	line-height:13px;
	color:#D3D3DA;
}

/* heading overlay */
.morph-heading-overlay {
	z-index:4500;
	background-color:#fff;
	opacity:.2;
}

/* heading image */
.morph-heading-image {
	z-index:4000;
	background-size:cover;
	background-repeat:repeat;
}


/*
MISC
**************************************************/
/* if absolute positioning active */
.morph-absolute {
	position:absolute;
}

/*--------------------------------------------------------------
 Morph menu
*/
 
.hMenuBtnBox::after, .hMenuBtnBox::before, .hMenuBtnBox div.hMenuBtnMiddle::before {
    background-color: #92959e;
    content: "";
    display: block;
    height: 2px;
    margin: 8px 0;
    outline: 1px solid transparent;
    -webkit-transition: all 0.25s ease 0s;
    -moz-transition: all 0.25s ease 0s;
    -ms-transition: all 0.25s ease 0s;
    transition: all 0.25s ease 0s;
    width:40px;
}

/********************************************************/
/* MAIN BACKGROUND
**************************************************/
/* main background */

#headerMenuBg {
	position:fixed;
	z-index:3400;
	top:0;
	right:0;
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	background-color:#F6F6FA;
	display:block;
	-webkit-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.75);
	-moz-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.75);
	box-shadow:0px 0px 5px 0px rgba(0,0,0,0.75);
	-webkit-transform:translateX(100%);
	-moz-transform:translateX(100%);
	-ms-transform:translateX(100%);
	transform:translateX(100%);
	-webkit-transition:all .4s cubic-bezier(.37,.15,.32,.94);
	-moz-transition:all .4s cubic-bezier(.37,.15,.32,.94);
	-ms-transition:all .4s cubic-bezier(.37,.15,.32,.94);
	transition:all .4s cubic-bezier(.37,.15,.32,.94);
	transition-duration:0.5s;
}

.headerMenuMainBox,.sphInquiryBox{
	-webkit-transform:translateX(100%);
	-moz-transform:translateX(100%);
	-ms-transform:translateX(100%);
	transform:translateX(100%);
	-webkit-transition:all .4s cubic-bezier(.37,.15,.32,.94);
	-moz-transition:all .4s cubic-bezier(.37,.15,.32,.94);
	-ms-transition:all .4s cubic-bezier(.37,.15,.32,.94);
	transition:all .4s cubic-bezier(.37,.15,.32,.94);
	transition-duration:0.5s;
}

#header .headerMenuBgActive {
	-webkit-transform:translateX(0);
	-moz-transform:translateX(0);
	-ms-transform:translateX(0);
	transform:translateX(0);
}

#header .headerMenuMainWrap-active .headerMenuMainBox,
#header .headerMenuWrap-active .sphInquiryBox{
	-webkit-transform:translateX(0);
	-moz-transform:translateX(0);
	-ms-transform:translateX(0);
	transform:translateX(0);
}

/* menu button */
.hMenuBtnBox:after,
.hMenuBtnBox:before,
.hMenuBtnBox div.hMenuBtnMiddle:before { 
	background-color: #2D6199;
}

/* main menu button hover */
.hMenuBtnBox:hover:after,
.hMenuBtnBox:hover:before,
.hMenuBtnBox:hover div.hMenuBtnMiddle:before { 
	background-color: #2D6199;
}

/* menu button active */
#header .morph-menu-active .hMenuBtnBox:after,
#header .morph-menu-active .hMenuBtnBox:before,
#header .morph-menu-active .hMenuBtnBox div.hMenuBtnMiddle:before { 
	background-color: #2D6199;
}

#header .morph-menu-active .hMenuBtnBox:before {
	margin:2px 0 0 0;
	transform:translateY(17px) rotate(45deg);
	-moz-transform:translateY(17px) rotate(45deg);
	-ms-transform:translateY(17px) rotate(45deg);
	-webkit-transform:translateY(17px) rotate(45deg);
}

/* heading + sub-heading text */
.morph-heading-text { 
	color: #fafafa; 			
}

.morph-subheading-text { 
	color: #fafafa; 	
}

/* menu button animations (-/X) */
/* top bar animation (3 lines) */
#header .morph-menu-active .hMenuBtnBox:before {
	margin:2px 0 0 0;
	transform:translateY(17px) rotate(45deg);
	-moz-transform:translateY(17px) rotate(45deg);
	-ms-transform:translateY(17px) rotate(45deg);
	-webkit-transform:translateY(17px) rotate(45deg);
}

/* bottom bar animation (3 lines) */
#header .morph-menu-active .hMenuBtnBox:after {
	margin:-5px 0 0 0;
	transform:translateY(-3px) rotate(-45deg);
	-moz-transform:translateY(-3px) rotate(-45deg);
	-ms-transform:translateY(-3px) rotate(-45deg);
	-webkit-transform:translateY(-3px) rotate(-45deg);
}

/* middle bar fade out (3 lines) */
#header .morph-menu-active div.hMenuBtnMiddle:before {
	opacity:0;
	-webkit-transition:all .15s ease;
	-moz-transition:all .15s ease;
	-ms-transition:all .15s ease;
	transition:all .15s ease;
}

#headerMenuWrap {
	top: 60px;
}
	
#header .morph-menu-active .hMenuBtnBox:before{
	margin:2px 0 0;
	transform:translateY(11px) rotate(45deg);
	-moz-transform:translateY(11px) rotate(45deg);
	-ms-transform:translateY(11px) rotate(45deg);
	-webkit-transform:translateY(11px) rotate(45deg);
}

#headerMenuMainWrap {
	transition-duration:0s;
	-webkit-transition-duration:0s;
	-moz-transition-duration:0s; 
	-o-transition-duration:0s;
	-ms-transition-duration:0s;
	background-color:#f1f0f0;
}

.sphInquiryBox{
	padding-top:10%;
	clear:both;
	display:block;
}

.sphInquiryTtl{
	text-align:center;
	font-size:105%;
	font-weight:bold;
	padding-bottom:5px;
}

.sphTel{
	text-align:center;
	padding-bottom:10px;
}
	
.sphTel a{
	line-height:1em;
}

.sphTel a img{
	width:21px;
	vertical-align:top;
}

.sphTel a span{
	display:inline-block;
	font-size:25px;
	color:#1f407a;
	font-weight:600;
	padding-top:2px;
	padding-left:2px;
}

.sphMail{
	text-align:center;
	width:280px;
	margin:0 auto;
	padding-bottom:40px;
	-webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

#wrapper #header .headerMenu .sphMail a{
	color:white;
	padding:12px 0;
	display:block;
	line-height:1em;
	font-size:18px;
	background-color:#1f407a;
	-webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

.sphMail a img{
	width:22px;
	padding-right:7px;
	vertical-align:top;
	padding-top:3px;
}

.sphContact{
	text-align:center;
	padding-bottom:10px;
}

a .hmSubTitle{
	color:#910D23;
	font-size:90%;
	padding-left:7px;
}

.sphInquiryBox a:hover{
	opacity:0.7;
	-moz-opacity:0.7;
	-webkit-opacity:0.7;
}

.sphInquiryBox a:hover img{
	opacity:1.0;
	-moz-opacity:1.0;
	-webkit-opacity:1.0;
}
	
#header_main .float_right,
.headerMenu li a span.menu_pc{
	display:none;
}
	
.headerMenu li a span.menu_sp,.headerMenu li.menu_sp{
	display:block;
}

}

@media screen and (max-width: 324px) {

#hMenuBtnWrap{
	
}

#header .morph-menu-active{

}
	
}


/************
コンテンツ[共通]
*************/
#mainImg{
	text-align:center;
	margin:0 auto;
}
#contents {
	clear:both;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	overflow:hidden;
}

#main{
	width:1000px;
	margin:40px auto;
}
#headerLogo{
	width:1280px;
	margin:20px auto 0;
}
@media screen and (max-width: 1300px) {
#headerLogo{
	width:100%;
}
}
@media screen and (max-width: 1300px) {
#headerLogo{
	margin:0 auto;
}
}
h1{
	background: -webkit-linear-gradient(to right, rgb(255, 185, 200), transparent);
	background: linear-gradient(to right, rgb(255, 185, 200), transparent);
	padding: 17px 5px 15px 25px;
	font-weight: bold;
	line-height: 100%;
	margin:0 auto;
	font-size:200%;
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}
.commonLeft{
	width:47%;
	float:left;
}
.commonRight{
	width:47%;
	float:right;	
}
.fontSize1{
	font-size:120%;
	font-weight:500;
}
.puzzleImg{
	margin:10px auto 5px;
	padding:5px;
	border:1px solid #ccc;
	border-box:box-sizing;
}
.txtBox{
	width:600px;
	margin:0 auto 20px;
	font-weight:500;
	font-size:110%;
}
.txt-size1{
	font-size:120%;
	line-height:140%;
}
.txt-size1 span{
	font-size:80%;
}
.txt-size2{
	padding-left:25px;
}
.icon1{
	position:relative;
	padding-left:20px;
}
.icon1::after {
	display: block;
	content: '';
	position: absolute;
	top: 10px;
	left: 2px;
	width: 10px;
	height: 10px;
	background-color: #ed6d37;
}
#topImg{
	width:600px;
	text-align:center;
	margin:40px auto 0;
}

.magazineTxt {
	font-size: 120%;
	color: #c42626;
}

.ribbon {
	display: inline-block;
	position: relative;
	height: 40px;
	line-height: 40px;
	text-align: center;
	padding: 0 30px 0 15px;
	font-size: 16px;
	background: #f57a78;
	color: #FFF;
	box-sizing: border-box;
	margin-bottom: 8px;
}

.ribbon:before {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

.ribbon:before {
  top: 0;
  right: 0;
  border-width: 20px 15px 20px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}

.rinriRink a {
	text-decoration: underline;
}

.rinriRink a:visited {
	color: #714f1a;
}

.rinriRink a:hover{
	color:rgb(0, 41, 238);
}


.youtubeBox{
	width:100%;
	margin:0 auto;
	aspect-ratio: 16 / 9;
}

.youtubeBox iframe{
	width: 100%;
	height: 100%;
	margin-top: 15px;
}

.bottom-midashi {
	background: #f4f4f4;
	padding: 5px 0 5px 10px;
	font-weight: 400;
}

.buy-SP {
	display: none;
}

.buy-Link {
	width: 294px;
	margin: 20px auto 0;
}

.buy-Link a {
	display: inline-block;
	width: 250px;
	text-decoration: none;
	font-size: 14px;
	background-color: #f57a78;
	color: #fff;
	border-radius: 30px;
	text-align: center;
	padding: 10px 20px;
	transition: 0.3s all;
}

.buy-Link a:hover {
	background-color: #ffa19f;
}

.contact-Link {
	width: 294px;
	margin: 20px auto 0;
}

.contact-Link a {
	display: inline-block;
	width: 250px;
	text-decoration: none;
	font-size: 14px;
	background-color: #eeeeee;
	color: #000;
	border-radius: 5px;
	text-align: center;
	padding: 18px 20px;
	transition: 0.3s all;
	border: 2px solid #ddd;
}

.contact-Link a:hover {
	background-color: #DDDDDD;
}

.fontSize1 span {
	font-size: 80%;
	margin-left: 5px;
}

.profileArea {
	margin-top: 20px;
	width: 100%;
}

.profileLeft {
	float: left;
	width: 40%;
}

.profileRight {
	float: right;
	width: 55%;
	margin-left: 5%;
}

.profile-name {
	font-size: 150%;
	margin-bottom: 10px;
}

@media screen and (max-width: 1100px) {
#main{
	width:98%;;
	margin:40px auto;
}
}
@media screen and (max-width: 768px) {
.commonLeft{
	width:100%;
	float:none;
}
.commonRight{
	width:100%;
	float:none;
	margin:20px auto 0;
}
.buy-SP {
	display: block;
}
.buy-PC {
	display: none;
}
.profileLeft {
	float: none;
	width: 100%;
}
	
.profileLeft img {
	margin: 0 auto;
	width: 60%;
	display: block;
}
.profileRight {
	float: right;
	width: 100%;
	margin: 20px 0 0 0;
}
	
}
@media screen and (max-width: 413px) {
	.ribbon{
		width: 100%;
		padding: 0;
		font-size: 14px;
	}
	.ribbon::before{
		display: none;
	}
}

/************
コンテンツ[タブレット]
*************/

@media screen and (max-width: 1120px) {

#contents {
	width: 96%;
}
#main{
	width:100%;
}

}

@media screen and (max-width: 640px) {

.txtBox{
	width:100%;
}

#topImg{
	max-width:600px;
	width:90%;
}	
}

/************
フッター[共通]
*************/

#footer{
	clear:both;
	oveflow:hidden;
}

#pageTopBtn{
	clear:both;
	z-index:9000;
	display:block;
	position: fixed;
	bottom: 60px;
	right: 1%;
}
/*20240110追加*/
#snsImg{
	clear:both;
	margin:0 auto 60px;
	text-align:center;
}

/************
印刷用
*************/

@page{
	margin: 16mm 10mm;
}

@-moz-document url-prefix(){
@page{
	margin: auto;
}
}

@media screen and (-webkit-min-device-pixel-ratio:0){
@page{
	margin: auto;
}
}

/************
スマートフォンのみ電話リンク有効化
*************/

@media screen and (min-width: 730px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}

.slide-contents img{
	max-width:none!important;
}